Push project up
This commit is contained in:
4
.editorconfig
Normal file
4
.editorconfig
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
root = true
|
||||||
|
|
||||||
|
[*]
|
||||||
|
charset = utf-8
|
||||||
@@ -1,2 +1,3 @@
|
|||||||
# game-shell
|
# game-shell
|
||||||
|
|
||||||
|
> **Note:** Meant to be both a shell and also starting base for games. In shell mode it loads PCK files such as assets, game, loggy-client, and store. In game mode you extend he scripts such as data_bridge and the shell replaces the old with the new. You export as game.pck
|
||||||
|
|||||||
28
configs/games.cfg
Normal file
28
configs/games.cfg
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
[lobby_load]
|
||||||
|
; Defaults to joning a lobby server bound to 8080.
|
||||||
|
; Has clients go through lobby to load a mode.
|
||||||
|
client1="client host_freeball freeball88"
|
||||||
|
client2="client join freeball88"
|
||||||
|
|
||||||
|
[only_game_server]
|
||||||
|
server="server_5010 game freeball"
|
||||||
|
|
||||||
|
[8ball_game_server]
|
||||||
|
server="server_5001 game 8ball"
|
||||||
|
client1="join_server 127.0.0.1 5001"
|
||||||
|
client2="join_server 127.0.0.1 5001"
|
||||||
|
|
||||||
|
[9ball_game_server]
|
||||||
|
server="server_5002 game 9ball"
|
||||||
|
client1="join_server 127.0.0.1 5002"
|
||||||
|
client2="join_server 127.0.0.1 5002"
|
||||||
|
|
||||||
|
[snooker_game_server]
|
||||||
|
server="server_5003 game snooker"
|
||||||
|
client1="join_server 127.0.0.1 5003"
|
||||||
|
client2="join_server 127.0.0.1 5003"
|
||||||
|
|
||||||
|
[freeball_game_server]
|
||||||
|
server="server_5004 game freeball"
|
||||||
|
client1="join_server 127.0.0.1 5004"
|
||||||
|
client2="join_server 127.0.0.1 5004"
|
||||||
17
globals/globals.gd
Normal file
17
globals/globals.gd
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
# NOTE: These should get overriden by '.pck' packs that load their own versions.
|
||||||
|
var game_data: GameData
|
||||||
|
var game_state: GameState
|
||||||
|
var lobby_data: LobbyData
|
||||||
|
var multiplayer_data: MultiplayerData
|
||||||
|
|
||||||
|
|
||||||
|
func cache_invalidate_load_resource(target: String) -> Resource:
|
||||||
|
# NOTE: Deep replace version b/c we don't want to use an autoloads
|
||||||
|
# that does this replasce before any nodes actually load.
|
||||||
|
ResourceLoader.load(target, "", ResourceLoader.CACHE_MODE_REPLACE_DEEP)
|
||||||
|
|
||||||
|
# NOTE: Let prior call propigate naturally. (Unsure when...)
|
||||||
|
# Enforce new script/node from pck called here.
|
||||||
|
return ResourceLoader.load(target, "", ResourceLoader.CACHE_MODE_IGNORE_DEEP)
|
||||||
1
globals/globals.gd.uid
Normal file
1
globals/globals.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://biu64hvcxb1su
|
||||||
68
globals/message_bus.gd
Normal file
68
globals/message_bus.gd
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
extends Node
|
||||||
|
|
||||||
|
|
||||||
|
var message_types: Dictionary[String, Array] = {}
|
||||||
|
|
||||||
|
|
||||||
|
func subscribe(id: String, callback: Callable) -> void:
|
||||||
|
if not message_types.has(id):
|
||||||
|
message_types.set(id, Array())
|
||||||
|
|
||||||
|
message_types.get(id).append(callback)
|
||||||
|
|
||||||
|
|
||||||
|
func clear_voided_listeners() -> void:
|
||||||
|
for mtype in message_types.keys():
|
||||||
|
var mlisteners: Array = message_types.get(mtype)
|
||||||
|
for mlistener in mlisteners:
|
||||||
|
if mlistener.is_valid(): continue
|
||||||
|
mlisteners.erase(mlistener)
|
||||||
|
|
||||||
|
|
||||||
|
func emit_local(id: String, data: Variant, expand: bool = false) -> void:
|
||||||
|
emit_propagation(id, data, expand)
|
||||||
|
|
||||||
|
|
||||||
|
# TODO: Need to actually validate client request. Also, message bus is more
|
||||||
|
# about server talking to clients than clients to server. I.E, reducing
|
||||||
|
# the number of needed @rpc method decorator bindings.
|
||||||
|
@rpc("any_peer", "call_remote", "reliable")
|
||||||
|
func emit_request(id: String, data: Variant, expand: bool = false) -> void:
|
||||||
|
if not multiplayer.is_server(): return
|
||||||
|
if not message_types.has(id):
|
||||||
|
push_error("'%s' not an existing message type to handle...", [id])
|
||||||
|
return
|
||||||
|
|
||||||
|
emit_propagation(id, data, expand)
|
||||||
|
|
||||||
|
@rpc("authority", "call_local", "reliable")
|
||||||
|
func emit_propagation(id: String, data: Variant, expand: bool = false) -> void:
|
||||||
|
if not message_types.has(id):
|
||||||
|
push_error("'%s' not an existing message type to handle...", [id])
|
||||||
|
return
|
||||||
|
|
||||||
|
for callback: Callable in message_types.get(id):
|
||||||
|
if data == null:
|
||||||
|
callback.call()
|
||||||
|
continue
|
||||||
|
|
||||||
|
if not expand:
|
||||||
|
callback.call(data)
|
||||||
|
else:
|
||||||
|
callback.callv(data)
|
||||||
|
|
||||||
|
@rpc("authority", "call_remote", "reliable")
|
||||||
|
func emit_propagation_clients_only(id: String, data: Variant, expand: bool = false) -> void:
|
||||||
|
if not message_types.has(id):
|
||||||
|
push_error("'%s' not an existing message type to handle...", [id])
|
||||||
|
return
|
||||||
|
|
||||||
|
for callback: Callable in message_types.get(id):
|
||||||
|
if data == null:
|
||||||
|
callback.call()
|
||||||
|
continue
|
||||||
|
|
||||||
|
if not expand:
|
||||||
|
callback.call(data)
|
||||||
|
else:
|
||||||
|
callback.callv(data)
|
||||||
1
globals/message_bus.gd.uid
Normal file
1
globals/message_bus.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://dgkbelaqw2a2g
|
||||||
654
icon.svg
Normal file
654
icon.svg
Normal file
@@ -0,0 +1,654 @@
|
|||||||
|
<?xml version="1.0" standalone="no"?>
|
||||||
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20010904//EN"
|
||||||
|
"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
|
||||||
|
<svg version="1.0" xmlns="http://www.w3.org/2000/svg"
|
||||||
|
width="645.000000pt" height="1280.000000pt" viewBox="0 0 645.000000 1280.000000"
|
||||||
|
preserveAspectRatio="xMidYMid meet">
|
||||||
|
<metadata>
|
||||||
|
Created by potrace 1.15, written by Peter Selinger 2001-2017
|
||||||
|
</metadata>
|
||||||
|
<g transform="translate(0.000000,1280.000000) scale(0.100000,-0.100000)"
|
||||||
|
fill="#000000" stroke="none">
|
||||||
|
<path d="M3035 12786 c-16 -7 -40 -24 -52 -37 -73 -80 -222 -499 -238 -671 -7
|
||||||
|
-70 -10 -79 -42 -110 -65 -62 -78 -100 -77 -218 1 -71 7 -129 21 -177 l19 -73
|
||||||
|
-30 0 c-40 -1 -66 -22 -110 -92 -78 -124 -94 -186 -160 -629 -50 -337 -54
|
||||||
|
-357 -83 -400 -16 -24 -73 -116 -126 -205 -90 -150 -97 -167 -112 -249 -26
|
||||||
|
-151 -38 -454 -21 -562 27 -176 13 -197 -301 -469 -121 -105 -190 -192 -251
|
||||||
|
-318 -60 -121 -70 -152 -121 -371 -63 -269 -66 -297 -66 -565 0 -214 3 -259
|
||||||
|
23 -357 12 -61 29 -131 38 -155 9 -23 24 -101 34 -171 16 -115 17 -134 4 -190
|
||||||
|
-32 -137 -153 -309 -337 -481 -63 -59 -138 -136 -168 -172 -97 -117 -327 -455
|
||||||
|
-384 -563 -30 -58 -74 -129 -96 -156 -23 -28 -51 -70 -62 -95 -30 -70 -126
|
||||||
|
-279 -153 -335 -24 -50 -100 -361 -128 -525 -36 -206 -50 -386 -50 -645 -1
|
||||||
|
-280 6 -354 55 -590 108 -523 312 -924 652 -1281 339 -355 676 -582 1327 -894
|
||||||
|
712 -340 649 -301 1050 -646 259 -223 312 -265 386 -302 55 -28 249 -82 295
|
||||||
|
-82 48 0 110 41 200 133 86 87 139 171 174 277 20 60 41 94 106 175 150 187
|
||||||
|
210 292 312 550 67 170 81 221 112 423 42 266 35 395 -40 717 -55 235 -54 313
|
||||||
|
7 550 26 100 59 206 73 238 35 76 40 115 21 160 l-15 38 77 35 c77 36 77 36
|
||||||
|
187 181 61 80 169 207 240 282 226 235 675 774 790 946 188 282 342 670 406
|
||||||
|
1020 19 101 22 158 23 355 0 244 -11 369 -55 585 -24 123 -134 455 -187 567
|
||||||
|
-40 86 -180 303 -286 443 -86 114 -243 273 -338 341 -44 33 -127 94 -185 136
|
||||||
|
-57 43 -122 83 -143 89 -45 14 -44 11 -30 59 38 127 42 309 10 475 -46 235
|
||||||
|
-179 567 -306 762 -125 193 -304 378 -386 398 -37 10 -48 59 -41 185 5 90 2
|
||||||
|
124 -22 240 -15 76 -42 168 -60 210 -18 41 -35 96 -39 122 -4 26 -17 59 -29
|
||||||
|
75 -73 95 -178 209 -242 262 -89 74 -101 101 -85 191 14 78 6 133 -37 245 -43
|
||||||
|
113 -69 157 -145 248 -55 66 -60 75 -55 110 3 24 -4 70 -19 125 -13 48 -24
|
||||||
|
103 -24 123 0 27 -18 68 -69 155 -79 137 -117 182 -161 191 -29 5 -37 16 -77
|
||||||
|
100 -59 123 -129 200 -225 248 -76 38 -123 43 -173 21z m195 -186 c25 -55 48
|
||||||
|
-100 51 -100 4 0 10 12 13 26 6 22 9 24 22 13 14 -11 64 -101 64 -114 0 -15
|
||||||
|
-164 -2 -262 21 -92 22 -111 30 -128 54 -32 44 -35 81 -11 128 25 50 30 52 95
|
||||||
|
62 116 17 107 22 156 -90z m1 -231 c145 -35 266 -82 297 -116 21 -23 22 -33
|
||||||
|
22 -169 l0 -144 40 0 c32 0 40 -4 40 -18 0 -24 -19 -42 -44 -42 -11 0 -153 43
|
||||||
|
-315 96 -163 53 -318 99 -346 103 -80 11 -95 24 -95 80 0 59 34 191 52 202 26
|
||||||
|
17 30 8 26 -58 -2 -56 0 -68 13 -71 13 -2 19 11 28 58 13 65 29 74 44 24 5
|
||||||
|
-16 11 -36 13 -44 8 -23 44 40 44 77 0 17 -8 39 -17 49 -16 16 -15 17 30 10
|
||||||
|
27 -4 102 -21 168 -37z m454 -353 c22 -22 45 -81 45 -116 0 -19 -19 -40 -37
|
||||||
|
-40 -11 0 -12 14 -7 66 l7 66 -42 -7 c-39 -6 -41 -5 -41 17 0 14 3 28 7 31 13
|
||||||
|
14 45 6 68 -17z m-548 -76 c288 -74 407 -112 498 -157 92 -47 125 -83 125
|
||||||
|
-136 l0 -41 -46 62 c-26 36 -56 65 -70 68 -53 13 -53 13 -21 -235 16 -127 27
|
||||||
|
-234 24 -237 -13 -13 -733 220 -844 272 -68 33 -93 81 -93 181 0 126 46 224
|
||||||
|
123 262 23 12 48 21 56 21 8 0 120 -27 248 -60z m563 -374 c29 -88 42 -207 30
|
||||||
|
-279 -18 -116 -27 -89 -33 108 -4 116 -10 164 -26 210 -14 40 -16 54 -6 41 8
|
||||||
|
-10 23 -46 35 -80z m123 -136 c17 -69 16 -114 -2 -94 -8 8 -41 143 -41 166 0
|
||||||
|
5 5 8 12 6 7 -3 20 -37 31 -78z m-856 -59 c338 -107 582 -188 699 -231 152
|
||||||
|
-57 411 -188 451 -229 18 -19 31 -36 29 -38 -2 -2 -34 15 -71 38 -37 22 -104
|
||||||
|
57 -149 76 -85 36 -265 87 -275 78 -6 -7 45 -212 65 -262 7 -18 26 -50 43 -70
|
||||||
|
47 -59 60 -130 62 -331 0 -98 -2 -189 -6 -204 -10 -40 -33 -35 -40 10 -3 20
|
||||||
|
-8 52 -11 70 -9 56 -24 34 -24 -35 l0 -66 -25 23 c-14 13 -30 42 -36 64 -21
|
||||||
|
79 -40 124 -59 141 -25 22 -25 24 -5 -124 14 -107 13 -131 -3 -131 -4 0 -32
|
||||||
|
74 -62 165 -30 91 -58 165 -62 165 -4 0 -8 -56 -8 -124 0 -69 -4 -127 -9 -131
|
||||||
|
-9 -5 -18 21 -72 208 -13 47 -27 77 -36 77 -10 0 -13 -28 -13 -132 l-1 -133
|
||||||
|
-24 27 c-22 25 -34 67 -50 176 -8 52 -44 98 -69 89 -10 -4 -15 -10 -12 -15 9
|
||||||
|
-15 9 -186 -1 -189 -5 -2 -30 61 -55 139 -26 78 -50 144 -55 145 -24 8 -30
|
||||||
|
-15 -22 -82 12 -115 14 -165 4 -166 -5 0 -32 66 -60 147 -29 82 -57 150 -63
|
||||||
|
152 -9 3 -12 -27 -12 -102 0 -66 -4 -107 -11 -112 -17 -10 -23 6 -69 175 -23
|
||||||
|
86 -44 159 -46 163 -3 4 -11 5 -19 1 -23 -8 -18 -95 9 -188 13 -44 20 -84 16
|
||||||
|
-89 -5 -5 -36 -7 -70 -4 -44 3 -66 10 -81 25 -44 43 -75 310 -59 497 10 113
|
||||||
|
32 241 44 253 15 16 16 -16 5 -173 -9 -129 -10 -190 -1 -258 13 -101 40 -206
|
||||||
|
54 -206 4 0 6 10 3 23 -4 12 -7 124 -8 247 -2 233 0 247 45 368 21 55 23 56
|
||||||
|
71 37 13 -5 17 -2 17 12 0 24 -31 54 -85 81 -76 40 -2 24 222 -47z m-341 -7
|
||||||
|
c-8 -33 -27 -126 -42 -209 -14 -82 -31 -175 -36 -205 -14 -79 -2 -220 27 -329
|
||||||
|
14 -52 23 -96 21 -99 -12 -12 -35 10 -56 53 -22 45 -23 60 -24 275 -1 126 -4
|
||||||
|
232 -8 236 -4 4 -14 1 -23 -6 -28 -23 -28 -1 -1 84 36 109 135 280 153 262 2
|
||||||
|
-2 -3 -30 -11 -62z m1328 -48 c9 -58 16 -116 16 -129 0 -26 -23 -52 -38 -43
|
||||||
|
-22 13 -24 276 -2 276 4 0 15 -47 24 -104z m-131 -453 c83 -197 104 -295 112
|
||||||
|
-540 7 -191 3 -209 -48 -218 -41 -7 -139 16 -145 34 -3 10 8 12 54 10 l58 -4
|
||||||
|
14 55 c19 72 21 316 4 395 -20 90 -60 210 -102 302 -21 45 -36 84 -33 87 16
|
||||||
|
16 46 -26 86 -121z m228 -85 c39 -66 85 -108 120 -108 27 0 43 -30 92 -165 64
|
||||||
|
-177 67 -188 76 -283 5 -45 11 -85 14 -89 4 -3 14 0 23 8 14 11 15 26 10 90
|
||||||
|
-8 100 -33 193 -95 363 -28 76 -50 141 -48 143 8 7 67 -69 92 -118 25 -48 63
|
||||||
|
-179 84 -289 12 -59 51 -345 51 -371 0 -8 -16 -23 -35 -32 l-35 -17 0 65 c0
|
||||||
|
36 -2 65 -5 65 -3 0 -22 -7 -42 -15 -20 -9 -40 -12 -44 -8 -4 5 -15 78 -24
|
||||||
|
163 -23 217 -47 316 -102 409 -43 75 -46 31 -7 -120 29 -108 37 -161 42 -275
|
||||||
|
8 -154 16 -178 75 -215 l32 -20 -35 6 c-41 8 -76 30 -104 69 -19 25 -22 47
|
||||||
|
-27 219 -8 231 -16 262 -128 482 -93 184 -90 176 -52 141 17 -16 49 -61 72
|
||||||
|
-98z m-1585 -80 c13 -79 24 -148 24 -154 0 -7 -12 -15 -27 -19 -16 -3 -41 -18
|
||||||
|
-57 -33 -23 -21 -28 -23 -22 -8 3 10 16 97 28 192 12 96 24 172 26 169 2 -2
|
||||||
|
15 -68 28 -147z m1523 -30 c55 -122 81 -280 81 -490 0 -101 -3 -128 -13 -128
|
||||||
|
-39 0 -44 29 -50 255 -6 196 -9 229 -32 304 -40 133 -32 162 14 59z m-1204
|
||||||
|
-280 c585 -216 719 -261 1090 -368 348 -100 427 -132 655 -263 171 -98 284
|
||||||
|
-177 271 -190 -10 -10 -22 -8 -99 21 -14 5 -4 -24 68 -191 87 -206 127 -454
|
||||||
|
110 -682 -22 -281 -23 -303 -10 -335 11 -27 11 -32 -6 -45 -23 -17 -66 -19
|
||||||
|
-134 -4 -41 9 -51 15 -58 37 -12 46 -5 162 18 267 28 128 37 350 21 466 -11
|
||||||
|
69 -43 193 -112 422 -13 46 17 14 52 -54 77 -154 113 -375 106 -654 -4 -161
|
||||||
|
-8 -205 -30 -285 -17 -68 -21 -97 -13 -102 19 -13 53 -9 76 10 30 25 50 166
|
||||||
|
50 367 0 228 -32 403 -107 584 -19 47 -50 124 -68 171 -38 96 -60 119 -167
|
||||||
|
175 -98 52 -216 89 -411 131 -94 20 -210 52 -259 70 -104 41 -135 43 -143 12
|
||||||
|
-7 -30 9 -315 18 -324 4 -4 16 1 27 11 15 13 20 31 20 65 0 77 12 200 20 200
|
||||||
|
13 0 39 -102 45 -175 11 -136 17 -175 24 -175 18 0 36 100 36 193 0 96 0 98
|
||||||
|
17 77 21 -26 21 -28 41 -180 9 -63 21 -128 28 -145 l12 -30 7 25 c14 43 11
|
||||||
|
164 -6 250 -18 98 -15 114 14 73 32 -45 48 -120 62 -295 13 -158 13 -158 38
|
||||||
|
-158 l25 0 -6 108 c-5 89 -34 239 -62 327 -5 15 0 12 19 -10 122 -143 148
|
||||||
|
-726 47 -1077 -23 -78 -57 -151 -82 -174 -16 -15 -17 -13 -12 23 2 21 24 181
|
||||||
|
47 355 39 296 41 317 24 321 -22 6 -21 10 -58 -208 -17 -99 -39 -212 -50 -252
|
||||||
|
-25 -93 -80 -214 -92 -206 -7 3 -8 35 -4 82 7 74 -3 131 -22 131 -5 0 -16 -26
|
||||||
|
-26 -57 -32 -101 -57 -163 -67 -163 -5 0 -9 93 -9 225 0 192 -2 225 -15 225
|
||||||
|
-17 0 -20 -12 -35 -140 -11 -101 -49 -198 -91 -236 l-22 -19 7 155 c3 85 9
|
||||||
|
179 12 208 5 43 4 52 -9 52 -21 0 -23 -8 -43 -223 -13 -138 -21 -190 -31 -194
|
||||||
|
-8 -3 -15 -4 -17 -2 -2 2 -11 105 -21 229 -9 124 -18 227 -21 229 -11 12 -34
|
||||||
|
-77 -34 -133 0 -35 -9 -117 -20 -181 -11 -64 -20 -121 -20 -126 0 -5 -6 -9
|
||||||
|
-13 -9 -10 0 -18 46 -31 173 -27 276 -28 277 -42 277 -11 0 -14 -40 -16 -192
|
||||||
|
-3 -187 -4 -193 -24 -196 -19 -3 -22 8 -48 215 -26 202 -36 246 -52 231 -3 -3
|
||||||
|
-10 -100 -16 -215 -10 -188 -17 -237 -33 -221 -3 3 -19 113 -36 244 -16 131
|
||||||
|
-32 240 -34 242 -15 16 -23 -28 -29 -165 -8 -178 -12 -203 -32 -203 -8 0 -14
|
||||||
|
3 -14 8 -1 24 -59 365 -64 369 -16 17 -24 -25 -30 -174 -7 -158 -16 -205 -35
|
||||||
|
-175 -4 7 -23 95 -42 197 -18 102 -37 185 -41 185 -20 0 -22 -300 -2 -357 5
|
||||||
|
-13 4 -15 -5 -7 -22 20 -82 207 -97 306 -9 55 -14 127 -12 160 4 49 2 58 -11
|
||||||
|
56 -23 -5 -33 -100 -26 -248 3 -69 8 -142 11 -162 5 -29 3 -38 -8 -38 -10 0
|
||||||
|
-27 52 -58 178 -35 145 -44 201 -49 307 l-6 130 -20 -35 c-28 -49 -26 -232 4
|
||||||
|
-380 24 -119 25 -130 11 -130 -48 0 -119 353 -120 596 0 193 31 342 106 499
|
||||||
|
35 74 104 189 110 183 2 -2 -17 -66 -42 -142 -28 -87 -47 -166 -51 -210 -6
|
||||||
|
-82 3 -80 37 9 39 102 99 210 135 245 19 19 35 29 35 24 0 -6 -16 -57 -35
|
||||||
|
-114 -46 -136 -47 -202 -3 -152 14 14 101 198 129 271 6 14 13 21 19 15 5 -5
|
||||||
|
-6 -59 -26 -129 -37 -129 -41 -167 -20 -204 15 -27 12 -33 57 98 30 87 67 158
|
||||||
|
93 181 20 16 21 23 -10 -142 -24 -134 -26 -168 -5 -168 5 0 30 62 57 138 52
|
||||||
|
150 51 148 61 139 3 -4 1 -49 -6 -100 -10 -71 -10 -103 -2 -135 7 -23 15 -42
|
||||||
|
20 -42 4 0 25 50 46 111 34 97 55 132 70 117 2 -2 -5 -37 -16 -78 -19 -71 -21
|
||||||
|
-151 -4 -168 14 -15 64 59 91 137 16 44 35 81 42 81 16 0 16 0 -10 -107 -19
|
||||||
|
-82 -20 -95 -8 -119 l14 -26 17 21 c9 11 22 51 29 87 20 115 64 168 55 66 -15
|
||||||
|
-169 -15 -192 5 -192 14 0 22 11 30 43 36 133 44 157 57 157 10 0 13 -28 13
|
||||||
|
-131 0 -119 2 -130 18 -127 13 3 21 26 37 118 15 87 24 115 35 115 12 0 17
|
||||||
|
-27 25 -140 8 -117 13 -140 27 -143 19 -4 26 33 29 143 4 154 -6 172 -106 194
|
||||||
|
-53 12 -361 135 -700 281 -92 39 -246 119 -284 146 -10 8 14 24 28 19 9 -4
|
||||||
|
102 -38 206 -77z m-335 9 c0 -2 -47 -97 -105 -211 -139 -274 -140 -279 -140
|
||||||
|
-498 0 -209 12 -243 39 -110 68 337 171 638 241 708 47 47 44 22 -11 -87 -114
|
||||||
|
-229 -159 -409 -158 -644 0 -172 14 -272 60 -417 14 -44 24 -82 21 -84 -13
|
||||||
|
-13 -77 80 -91 132 -21 75 -45 131 -63 145 -18 16 -17 6 9 -107 12 -52 19 -97
|
||||||
|
15 -100 -3 -4 -23 2 -44 13 -143 74 -192 345 -137 758 19 137 21 145 45 145
|
||||||
|
23 0 23 -8 4 -80 -68 -251 -54 -618 28 -725 9 -11 17 -18 20 -15 3 3 -2 70 -9
|
||||||
|
150 -19 203 -19 396 1 500 20 104 73 243 126 332 22 37 53 97 69 133 25 55 33
|
||||||
|
65 55 65 14 0 25 -2 25 -3z m1749 -665 c27 -53 58 -158 78 -265 25 -133 25
|
||||||
|
-496 0 -622 -24 -120 -60 -228 -100 -295 l-32 -55 -3 47 c-2 27 4 87 13 135
|
||||||
|
46 259 55 319 66 438 17 193 -2 427 -46 579 -27 90 -13 111 24 38z m84 9 c29
|
||||||
|
-49 66 -156 86 -249 56 -254 58 -621 5 -829 -17 -67 -71 -183 -85 -183 -16 0
|
||||||
|
-10 159 10 238 34 134 45 232 45 402 0 184 -17 314 -64 509 -17 67 -30 126
|
||||||
|
-30 132 0 18 16 8 33 -20z m246 -141 c16 -30 33 -77 40 -103 20 -83 62 -465
|
||||||
|
68 -627 5 -139 3 -164 -17 -245 -27 -107 -40 -136 -74 -159 -31 -20 -31 -16
|
||||||
|
-6 76 51 186 65 479 34 700 -13 93 -72 352 -99 433 l-7 20 17 -20 c9 -11 29
|
||||||
|
-45 44 -75z m-106 22 c51 -112 89 -334 103 -589 7 -138 -3 -226 -47 -423 -31
|
||||||
|
-135 -46 -167 -69 -144 -5 5 5 101 22 214 24 163 30 240 31 375 0 172 -1 183
|
||||||
|
-57 493 -13 72 -20 132 -16 132 4 0 19 -26 33 -58z m445 -275 c103 -206 132
|
||||||
|
-339 132 -611 0 -99 -3 -232 -7 -293 -5 -100 -8 -113 -24 -113 -27 0 -33 38
|
||||||
|
-23 138 5 48 9 179 8 292 0 172 -4 221 -22 304 -24 107 -73 255 -116 350 -45
|
||||||
|
98 -3 45 52 -67z m76 26 c35 -61 42 -79 30 -81 -30 -7 -62 27 -82 87 -19 56
|
||||||
|
-19 71 -1 71 4 0 28 -35 53 -77z m110 -201 c58 -116 85 -191 110 -311 34 -162
|
||||||
|
50 -319 42 -433 -8 -128 -22 -169 -61 -180 -36 -9 -51 3 -36 31 11 19 9 21
|
||||||
|
-17 21 -48 0 -57 21 -43 93 7 34 15 137 18 229 6 178 -7 297 -47 428 -11 36
|
||||||
|
-20 76 -20 89 l0 24 25 -23 c30 -28 30 -28 6 43 -11 32 -18 57 -16 57 3 0 20
|
||||||
|
-31 39 -68z m-2619 -228 c409 -235 495 -278 590 -299 126 -27 423 -101 620
|
||||||
|
-155 192 -52 246 -63 537 -110 220 -36 303 -56 451 -110 108 -40 419 -132 487
|
||||||
|
-145 l35 -6 -45 40 c-56 51 -38 52 67 7 289 -124 432 -221 562 -380 105 -130
|
||||||
|
92 -124 -70 31 -108 103 -186 157 -334 230 -121 61 -145 69 -145 51 0 -18 53
|
||||||
|
-50 144 -88 304 -127 540 -426 695 -882 55 -162 66 -188 83 -188 19 0 1 79
|
||||||
|
-53 225 -28 77 -58 166 -65 198 -9 36 -40 100 -85 175 -76 125 -75 126 20 15
|
||||||
|
109 -128 172 -225 242 -368 149 -306 213 -576 226 -940 19 -572 -123 -1062
|
||||||
|
-450 -1550 -145 -217 -362 -484 -379 -467 -5 5 50 87 141 210 213 284 273 376
|
||||||
|
357 547 139 283 242 652 274 980 28 287 -5 603 -94 904 -54 181 -142 393 -189
|
||||||
|
456 -14 18 -16 18 -22 4 -3 -9 24 -97 63 -200 171 -453 207 -616 206 -939 0
|
||||||
|
-195 -14 -322 -60 -550 -67 -336 -195 -641 -393 -935 -114 -171 -320 -448
|
||||||
|
-423 -570 -82 -98 -259 -273 -378 -375 -224 -191 -652 -471 -993 -650 -97 -51
|
||||||
|
-194 -108 -217 -127 -47 -41 -94 -120 -175 -295 -32 -71 -63 -128 -68 -128 -8
|
||||||
|
0 -5 99 6 202 1 9 -2 18 -8 20 -9 3 -27 -42 -49 -117 -6 -18 -7 -19 -17 -3 -7
|
||||||
|
13 0 56 26 165 56 227 89 286 234 410 61 52 125 89 350 203 462 234 565 305
|
||||||
|
816 561 303 310 582 689 725 984 122 250 255 669 301 947 29 169 33 217 33
|
||||||
|
388 1 225 -11 313 -80 595 -80 323 -120 421 -259 636 -137 211 -233 336 -299
|
||||||
|
388 -35 28 -66 51 -69 51 -3 0 43 -100 103 -222 76 -156 126 -274 165 -391
|
||||||
|
139 -416 207 -799 185 -1037 -48 -518 -93 -737 -230 -1115 -171 -476 -294
|
||||||
|
-685 -587 -1008 -128 -141 -351 -353 -472 -450 -105 -84 -197 -142 -325 -207
|
||||||
|
-60 -30 -107 -59 -105 -65 2 -5 11 -9 19 -8 26 3 358 191 452 255 270 185 575
|
||||||
|
506 817 863 182 269 286 479 343 695 17 63 48 162 69 220 47 127 59 182 103
|
||||||
|
478 33 215 49 282 67 282 31 0 -4 -262 -87 -640 -90 -411 -265 -793 -528
|
||||||
|
-1154 -190 -260 -492 -584 -654 -701 -113 -82 -435 -265 -679 -386 -281 -141
|
||||||
|
-350 -207 -429 -411 -20 -51 -38 -95 -41 -98 -8 -8 7 127 23 204 20 103 61
|
||||||
|
180 158 300 48 59 86 111 84 117 -2 5 -61 -41 -131 -101 -71 -61 -130 -110
|
||||||
|
-132 -110 -2 0 1 15 6 33 5 17 14 66 19 107 9 83 1 72 138 183 47 38 69 62 66
|
||||||
|
72 -9 23 -19 19 -101 -46 -41 -33 -79 -57 -83 -52 -7 9 -90 325 -90 345 0 7
|
||||||
|
53 40 118 72 216 108 390 238 544 409 389 431 677 1043 770 1638 19 125 22
|
||||||
|
184 23 449 0 308 -3 355 -47 665 -15 106 -26 157 -39 174 -17 21 -19 21 -25 6
|
||||||
|
-7 -18 26 -329 52 -495 26 -166 34 -343 23 -500 -23 -337 -94 -663 -201 -925
|
||||||
|
-50 -123 -252 -518 -326 -639 -158 -257 -439 -535 -679 -674 -128 -73 -222
|
||||||
|
-121 -227 -114 -2 4 -7 27 -11 52 -9 58 -17 71 -34 61 -11 -7 -11 -42 4 -217
|
||||||
|
11 -124 18 -315 19 -469 1 -233 -1 -274 -23 -390 -41 -227 -21 -434 61 -630
|
||||||
|
14 -33 38 -116 52 -185 23 -105 40 -151 102 -282 63 -130 78 -173 90 -245 7
|
||||||
|
-49 18 -116 24 -150 6 -37 28 -98 54 -150 25 -48 52 -116 60 -150 17 -67 35
|
||||||
|
-260 36 -381 0 -105 11 -121 112 -160 66 -26 97 -32 156 -32 39 0 72 -4 72 -9
|
||||||
|
0 -14 -20 -18 -162 -32 -70 -7 -133 -16 -139 -20 -6 -4 -23 -78 -38 -165 -21
|
||||||
|
-126 -29 -160 -42 -162 -28 -5 -32 43 -8 109 32 87 23 207 -30 414 -39 153
|
||||||
|
-48 173 -186 450 -79 160 -176 346 -215 415 -187 331 -232 605 -175 1071 25
|
||||||
|
202 85 615 99 685 8 39 10 67 4 70 -5 3 -12 4 -15 1 -6 -6 -92 -366 -127 -535
|
||||||
|
-72 -343 -79 -649 -19 -882 3 -14 3 -22 -1 -19 -16 15 -67 221 -78 316 -19
|
||||||
|
166 9 426 82 747 16 72 45 201 65 286 74 325 101 556 91 775 -14 312 -78 497
|
||||||
|
-275 797 -184 281 -358 463 -660 692 -101 77 -223 175 -272 218 -90 80 -155
|
||||||
|
128 -170 128 -5 0 -21 -13 -35 -29 -15 -17 -40 -33 -58 -37 -59 -12 -151 -61
|
||||||
|
-232 -122 -110 -83 -527 -493 -623 -612 -196 -243 -362 -591 -421 -879 -85
|
||||||
|
-419 -10 -991 201 -1518 101 -255 170 -388 214 -417 18 -12 25 -26 25 -47 0
|
||||||
|
-21 12 -43 43 -77 70 -76 89 -108 73 -121 -11 -9 -35 17 -118 126 -171 225
|
||||||
|
-208 295 -296 558 -152 453 -224 847 -224 1230 -1 344 35 485 220 865 83 170
|
||||||
|
97 194 187 298 128 149 512 540 621 633 135 114 144 125 69 73 -175 -119 -274
|
||||||
|
-203 -461 -389 -337 -335 -470 -514 -569 -763 -65 -166 -92 -319 -132 -769
|
||||||
|
-14 -159 -21 -203 -32 -203 -19 0 -9 406 13 540 49 282 169 605 302 806 47 72
|
||||||
|
482 516 614 626 96 80 425 325 468 347 20 11 26 10 36 -5 11 -15 18 -15 46 -6
|
||||||
|
56 20 103 15 142 -15 20 -16 105 -86 189 -157 208 -175 338 -271 351 -258 18
|
||||||
|
18 -11 109 -51 161 -93 124 -379 435 -433 471 -54 36 -160 70 -217 70 -30 0
|
||||||
|
-179 -80 -247 -132 -87 -67 -344 -299 -344 -310 0 -31 126 53 246 164 58 54
|
||||||
|
138 117 177 141 68 40 196 91 206 81 2 -2 2 -5 0 -7 -2 -2 -49 -39 -104 -83
|
||||||
|
-55 -44 -170 -134 -255 -199 -432 -329 -751 -664 -929 -974 -122 -214 -204
|
||||||
|
-446 -249 -706 -106 -608 -3 -1332 256 -1801 124 -225 382 -562 583 -763 237
|
||||||
|
-235 414 -345 787 -487 672 -256 1093 -502 1466 -854 56 -53 114 -101 130
|
||||||
|
-108 l29 -13 -7 -91 c-3 -50 -8 -93 -11 -96 -17 -17 -72 23 -173 124 -94 93
|
||||||
|
-123 116 -160 128 -35 10 -48 19 -52 36 -4 17 -31 39 -90 73 -47 27 -175 105
|
||||||
|
-286 173 -231 141 -361 208 -640 330 -274 119 -396 182 -554 283 -74 48 -175
|
||||||
|
112 -223 142 -107 66 -221 164 -431 369 -177 173 -292 310 -381 455 -58 95
|
||||||
|
-98 132 -136 127 -11 -2 -34 34 -77 120 -108 219 -181 416 -237 638 -64 257
|
||||||
|
-85 429 -85 715 0 355 49 659 166 1015 42 129 48 142 134 259 50 67 88 126 85
|
||||||
|
132 -4 5 -25 -5 -47 -23 l-41 -32 7 29 c15 60 186 313 350 519 167 209 279
|
||||||
|
341 446 526 113 125 173 205 230 304 57 99 69 103 162 47 48 -30 92 -46 162
|
||||||
|
-61 177 -39 246 -69 378 -167 106 -78 193 -170 278 -292 101 -145 326 -447
|
||||||
|
399 -536 36 -44 124 -141 196 -216 160 -167 245 -285 330 -454 76 -151 112
|
||||||
|
-278 121 -424 6 -86 2 -124 -22 -282 -7 -39 13 -69 44 -69 37 0 238 145 332
|
||||||
|
240 155 154 309 348 295 370 -5 8 -71 -52 -189 -172 -204 -207 -403 -374 -422
|
||||||
|
-355 -3 3 -1 22 6 42 9 28 24 43 67 67 117 66 364 330 494 528 118 179 269
|
||||||
|
481 269 539 0 44 -30 2 -94 -134 -75 -157 -181 -333 -279 -464 -130 -173 -355
|
||||||
|
-391 -404 -391 -9 0 -13 18 -13 63 0 72 20 122 73 185 78 93 242 350 303 475
|
||||||
|
39 81 92 215 135 347 73 220 95 330 67 330 -10 0 -21 -30 -37 -101 -78 -348
|
||||||
|
-251 -691 -507 -1007 l-43 -53 -11 38 c-6 21 -17 47 -25 57 -29 39 -18 81 65
|
||||||
|
239 140 269 219 482 264 716 54 279 117 710 107 728 -6 10 -11 13 -11 8 0 -6
|
||||||
|
-23 -139 -50 -295 -81 -456 -149 -703 -256 -930 -68 -142 -153 -280 -174 -280
|
||||||
|
-11 0 -22 22 -36 70 -21 70 -17 87 6 30 l13 -31 28 43 c77 115 183 415 224
|
||||||
|
631 56 303 84 586 126 1287 25 426 29 611 13 617 -6 2 -14 -4 -18 -13 -4 -10
|
||||||
|
-18 -236 -31 -503 -58 -1128 -115 -1488 -292 -1846 -37 -74 -69 -115 -89 -115
|
||||||
|
-17 0 2 76 49 202 80 212 119 429 162 913 33 376 99 1267 98 1333 -1 50 -15
|
||||||
|
84 -29 70 -9 -10 -21 -129 -43 -423 -70 -936 -94 -1221 -107 -1310 -18 -127
|
||||||
|
-68 -315 -138 -525 -73 -215 -66 -201 -81 -160 -20 52 -18 73 14 164 33 93 59
|
||||||
|
218 95 461 28 183 31 225 17 225 -5 0 -49 -160 -97 -356 -49 -196 -92 -360
|
||||||
|
-95 -366 -4 -6 -12 -7 -18 -4 -20 12 -12 104 19 219 31 117 44 232 140 1232
|
||||||
|
80 844 88 973 57 962 -18 -6 -25 -52 -37 -257 -6 -107 -28 -370 -50 -585 -22
|
||||||
|
-214 -49 -496 -60 -625 -25 -290 -42 -395 -86 -530 -18 -58 -38 -141 -44 -185
|
||||||
|
-20 -143 -12 -142 -100 -10 -77 116 -78 119 -57 130 20 9 25 30 49 185 54 346
|
||||||
|
70 500 50 500 -8 0 -69 -241 -118 -465 -18 -83 -24 -135 -20 -170 l6 -49 -77
|
||||||
|
76 c-61 61 -76 82 -75 105 0 16 22 176 47 356 37 256 46 340 40 385 -4 31 -10
|
||||||
|
50 -13 42 -3 -8 -35 -175 -72 -370 -52 -276 -70 -356 -82 -358 -31 -6 -28 63
|
||||||
|
14 285 30 165 41 253 45 363 3 90 2 141 -4 135 -5 -5 -33 -163 -63 -350 -29
|
||||||
|
-187 -56 -346 -60 -354 -5 -9 -13 -3 -28 22 -35 55 -38 90 -12 132 24 39 27
|
||||||
|
66 50 440 11 184 6 241 -18 226 -14 -8 -84 -432 -97 -588 -4 -46 -11 -83 -16
|
||||||
|
-83 -19 0 -49 41 -49 68 0 15 7 45 14 67 8 22 19 123 25 225 6 102 13 218 16
|
||||||
|
258 6 73 -9 152 -25 135 -5 -4 -29 -136 -55 -293 -26 -157 -49 -287 -51 -289
|
||||||
|
-2 -3 -9 0 -16 7 -8 8 -7 83 3 294 17 343 17 313 0 313 -11 0 -21 -45 -42
|
||||||
|
-195 -16 -107 -28 -196 -29 -197 0 -2 -9 -3 -20 -3 -19 0 -20 7 -20 255 0 241
|
||||||
|
-1 255 -18 255 -17 0 -21 -20 -40 -182 -12 -101 -25 -211 -28 -245 -4 -35 -10
|
||||||
|
-63 -14 -63 -14 0 -20 77 -20 277 0 193 -11 303 -31 303 -5 0 -9 -10 -9 -22 0
|
||||||
|
-151 -39 -440 -61 -453 -11 -8 -11 47 1 277 10 205 1 271 -37 276 l-23 3 0
|
||||||
|
-265 c0 -225 -2 -266 -14 -266 -19 0 -22 30 -35 330 -11 244 -22 320 -48 320
|
||||||
|
-16 0 -16 -11 1 -245 23 -299 23 -299 6 -303 -13 -2 -22 50 -53 311 -44 360
|
||||||
|
-55 547 -38 696 26 239 115 547 221 766 59 122 170 300 230 369 27 30 31 39
|
||||||
|
19 47 -8 5 -17 9 -21 9 -17 0 -173 -200 -224 -287 -166 -281 -261 -609 -294
|
||||||
|
-1020 -11 -137 -10 -148 51 -521 38 -237 48 -362 30 -362 -12 0 -15 11 -41
|
||||||
|
140 -70 347 -94 668 -66 890 56 440 190 787 416 1075 26 34 52 71 59 83 10 19
|
||||||
|
9 22 -8 22 -41 0 -262 -274 -331 -410 -46 -91 -111 -274 -145 -410 -74 -294
|
||||||
|
-78 -474 -17 -993 23 -197 42 -361 42 -366 0 -5 -18 -12 -41 -16 -38 -7 -43
|
||||||
|
-5 -71 29 -34 42 -45 44 -82 15 l-26 -20 -10 23 c-13 31 -92 352 -124 506 -30
|
||||||
|
142 -33 246 -11 454 13 134 24 170 67 228 14 19 20 51 25 128 3 56 9 102 14
|
||||||
|
102 4 0 10 19 14 43 12 77 36 151 79 238 105 210 242 357 416 444 30 15 72 43
|
||||||
|
93 61 23 22 47 34 65 34 18 0 133 -60 317 -166z m3245 -1478 c112 -226 220
|
||||||
|
-644 237 -917 6 -97 -2 -209 -16 -209 -4 0 -15 66 -25 148 -51 432 -89 582
|
||||||
|
-250 995 -25 66 -46 122 -46 125 0 3 11 -5 25 -18 14 -13 47 -69 75 -124z
|
||||||
|
m-3601 -1627 c30 -42 30 -42 12 -68 -60 -86 -115 -343 -153 -716 -21 -207 -17
|
||||||
|
-949 5 -1140 30 -247 66 -409 111 -491 8 -16 15 -24 16 -18 0 6 -16 122 -35
|
||||||
|
257 -60 430 -69 530 -69 817 0 157 5 306 12 365 17 132 151 925 158 934 2 2
|
||||||
|
72 -50 156 -116 84 -66 189 -146 233 -180 44 -33 99 -80 123 -103 122 -122
|
||||||
|
386 -486 450 -620 40 -82 46 -105 48 -167 1 -39 8 -82 16 -95 l13 -23 3 25 c6
|
||||||
|
41 19 44 25 5 4 -25 0 -53 -14 -87 -20 -51 -19 -59 12 -94 16 -17 20 -44 25
|
||||||
|
-170 7 -168 17 -102 -121 -829 -143 -756 -149 -799 -134 -985 12 -148 42 -303
|
||||||
|
104 -535 25 -93 45 -173 45 -177 0 -5 -9 -8 -20 -8 -26 0 -16 -27 13 -36 12
|
||||||
|
-3 32 -16 45 -27 20 -19 232 -414 232 -434 0 -5 -61 -63 -135 -131 -104 -93
|
||||||
|
-142 -122 -163 -122 -18 0 -51 19 -97 57 -237 191 -399 266 -1055 488 -274 92
|
||||||
|
-356 133 -483 239 -85 71 -72 80 22 16 124 -82 199 -119 376 -180 189 -64 534
|
||||||
|
-197 685 -263 141 -61 216 -103 393 -225 96 -65 142 -91 149 -84 13 13 -15 52
|
||||||
|
-57 79 -17 11 -142 89 -278 173 -137 84 -246 154 -243 157 7 8 263 -119 366
|
||||||
|
-182 52 -31 125 -79 163 -106 70 -51 84 -48 44 12 -33 48 -97 94 -259 181 -79
|
||||||
|
43 -161 89 -183 103 -38 24 -38 25 -10 19 48 -11 162 -62 259 -117 200 -112
|
||||||
|
229 -127 233 -123 5 5 -110 101 -178 147 -31 21 -103 63 -160 95 -120 65 -125
|
||||||
|
68 -84 59 50 -12 209 -90 324 -159 60 -36 112 -66 117 -66 4 0 -8 16 -27 36
|
||||||
|
-83 86 -397 266 -624 357 -110 44 -203 72 -212 63 -2 -2 53 -35 124 -72 175
|
||||||
|
-93 183 -98 174 -113 -6 -9 -55 5 -196 59 -104 38 -191 72 -193 75 -3 2 7 10
|
||||||
|
22 16 28 13 22 33 -14 42 -22 6 -84 -56 -77 -76 2 -7 32 -22 68 -35 101 -36
|
||||||
|
279 -124 279 -139 0 -7 -2 -13 -4 -13 -2 0 -87 31 -187 70 -101 38 -187 70
|
||||||
|
-191 70 -5 0 -8 -8 -8 -19 0 -14 34 -32 160 -82 148 -59 194 -89 125 -81 -30
|
||||||
|
4 -149 46 -236 83 -47 21 -53 27 -94 108 -33 67 -56 97 -101 136 -85 73 -113
|
||||||
|
91 -185 118 -92 35 -135 58 -206 112 -109 81 -148 139 -408 605 -75 135 -147
|
||||||
|
255 -160 266 -17 16 -28 44 -40 105 -10 46 -50 172 -90 280 -130 350 -151 486
|
||||||
|
-142 924 5 256 15 351 59 530 21 90 55 182 63 173 2 -2 -2 -26 -10 -52 -22
|
||||||
|
-73 -62 -289 -75 -401 -16 -146 -14 -440 5 -589 50 -407 186 -809 422 -1251
|
||||||
|
47 -88 105 -189 128 -225 42 -66 164 -203 129 -145 -362 595 -545 1103 -594
|
||||||
|
1645 -31 346 12 755 115 1093 19 64 35 120 35 124 0 3 2 4 5 1 3 -3 -8 -67
|
||||||
|
-25 -142 -138 -620 -130 -1088 27 -1606 110 -367 345 -845 534 -1090 109 -142
|
||||||
|
136 -165 53 -45 -78 113 -215 350 -284 490 -371 763 -442 1509 -219 2305 47
|
||||||
|
168 142 431 147 406 2 -9 -19 -92 -47 -184 -236 -781 -247 -1266 -43 -1849 71
|
||||||
|
-203 161 -409 294 -674 127 -254 166 -319 265 -446 69 -89 117 -131 128 -113
|
||||||
|
8 13 -27 68 -93 149 -81 99 -160 231 -271 451 -196 392 -280 648 -341 1048
|
||||||
|
-27 176 -42 392 -35 487 27 337 116 851 190 1089 28 89 40 114 51 104 8 -8 -8
|
||||||
|
-95 -77 -423 -126 -606 -137 -965 -38 -1360 46 -182 176 -562 247 -723 46
|
||||||
|
-104 283 -510 313 -538 14 -12 23 -14 30 -7 14 14 -3 48 -107 204 -128 191
|
||||||
|
-203 364 -299 684 -65 215 -121 451 -142 590 -23 162 -23 523 0 730 41 351 74
|
||||||
|
579 117 790 36 177 48 217 63 212 14 -5 17 20 -38 -312 -86 -521 -110 -783
|
||||||
|
-102 -1107 9 -363 68 -611 282 -1183 31 -84 111 -223 121 -212 2 1 -22 60 -52
|
||||||
|
130 -139 326 -230 690 -264 1057 -15 166 -12 549 5 736 24 259 55 458 122 767
|
||||||
|
33 153 49 194 69 175 2 -3 -7 -58 -21 -123 -26 -117 -127 -914 -140 -1095 -17
|
||||||
|
-247 53 -727 155 -1060 63 -204 184 -474 233 -518 19 -17 19 -16 2 23 -225
|
||||||
|
527 -316 962 -316 1520 0 421 48 778 165 1238 43 166 50 186 62 174 8 -7 -43
|
||||||
|
-293 -92 -523 -47 -221 -62 -329 -75 -534 -32 -526 44 -1061 211 -1488 36 -94
|
||||||
|
69 -164 70 -152 0 3 -16 52 -35 109 -71 212 -130 494 -155 741 -30 308 -38
|
||||||
|
642 -20 850 14 156 75 587 106 740 51 253 110 417 140 387 3 -3 -12 -67 -34
|
||||||
|
-144 -70 -241 -93 -364 -103 -543 -6 -91 -19 -239 -30 -330 -54 -440 -26 -889
|
||||||
|
82 -1325 32 -129 120 -407 136 -432 31 -47 30 -20 -2 75 -58 166 -102 361
|
||||||
|
-132 577 -35 255 -18 1246 27 1595 6 41 22 122 36 178 26 105 106 319 126 337
|
||||||
|
8 7 9 4 4 -10 -16 -43 -65 -277 -90 -420 -55 -328 -61 -417 -61 -895 0 -567
|
||||||
|
22 -801 100 -1084 40 -144 104 -308 124 -314 20 -7 8 67 -24 145 -142 350
|
||||||
|
-183 1064 -104 1833 19 184 35 274 92 520 14 58 30 138 37 178 6 39 13 72 15
|
||||||
|
72 2 0 17 -19 34 -41z m-1654 -2301 c15 -104 54 -268 111 -466 20 -68 33 -126
|
||||||
|
31 -128 -6 -6 -82 207 -108 302 -31 114 -49 231 -53 349 -3 61 -2 94 0 75 3
|
||||||
|
-19 11 -79 19 -132z m4175 -232 c0 -14 -174 -131 -330 -220 -197 -114 -216
|
||||||
|
-128 -205 -145 4 -8 51 12 139 59 74 38 139 70 145 70 17 0 -15 -69 -47 -103
|
||||||
|
-15 -16 -63 -50 -107 -77 -97 -58 -180 -129 -167 -142 5 -5 77 16 175 53 92
|
||||||
|
34 170 59 174 55 5 -4 -8 -21 -27 -38 -34 -29 -34 -29 -8 -24 14 3 33 9 42 12
|
||||||
|
38 15 11 -19 -51 -62 -87 -61 -86 -60 -78 -73 4 -8 16 -6 38 7 18 11 55 32 82
|
||||||
|
48 l50 28 -26 -34 c-14 -19 -77 -70 -140 -113 -63 -43 -129 -92 -147 -110 -27
|
||||||
|
-26 -30 -33 -18 -45 11 -12 36 -2 164 65 82 43 154 74 159 70 4 -5 -14 -28
|
||||||
|
-42 -50 -90 -76 -110 -95 -104 -101 3 -4 36 8 73 24 38 17 74 30 82 28 8 -2
|
||||||
|
-46 -54 -121 -116 -121 -102 -156 -142 -125 -142 6 0 60 25 122 56 61 30 121
|
||||||
|
60 134 64 49 19 31 -10 -42 -65 -41 -32 -71 -62 -67 -66 5 -5 38 7 73 26 36
|
||||||
|
19 68 35 73 35 24 1 -9 -31 -138 -134 -80 -63 -141 -117 -136 -120 5 -4 76 18
|
||||||
|
157 49 81 30 151 55 155 55 25 0 1 -22 -73 -70 -46 -29 -78 -55 -73 -57 6 -2
|
||||||
|
51 10 100 27 97 33 105 34 105 21 0 -5 -63 -44 -140 -86 -78 -42 -140 -82
|
||||||
|
-140 -90 0 -8 6 -12 13 -10 38 13 227 65 235 65 6 0 14 -12 20 -27 l9 -28 -56
|
||||||
|
0 c-42 -1 -69 -8 -108 -29 -29 -16 -53 -33 -53 -37 0 -4 24 -1 53 7 110 29
|
||||||
|
104 12 -18 -49 -52 -26 -95 -51 -95 -57 0 -14 7 -13 132 15 70 16 115 22 121
|
||||||
|
16 6 -6 -33 -31 -104 -66 -126 -63 -125 -63 -116 -71 5 -5 40 3 140 32 10 3
|
||||||
|
17 0 17 -8 -1 -22 -187 -101 -250 -106 -65 -5 -181 30 -315 95 l-80 38 193 3
|
||||||
|
c156 2 192 5 192 16 0 8 -12 17 -27 20 -27 6 -254 25 -301 26 -49 0 -9 17 55
|
||||||
|
24 113 11 253 57 253 82 0 18 -4 18 -210 -15 -120 -19 -177 -25 -182 -18 -11
|
||||||
|
18 2 27 41 27 51 0 125 23 172 55 35 23 104 103 96 111 -2 2 -62 -23 -134 -56
|
||||||
|
-72 -33 -140 -60 -151 -60 -10 0 -27 9 -37 20 -10 11 -33 23 -53 26 -34 7 -32
|
||||||
|
8 64 49 126 53 143 62 177 94 27 25 62 80 55 86 -2 1 -41 -19 -88 -46 -74 -43
|
||||||
|
-91 -49 -142 -49 -32 0 -58 3 -58 8 0 4 37 29 81 56 66 40 91 63 136 123 55
|
||||||
|
75 103 151 103 166 0 21 -32 -4 -151 -114 -71 -67 -133 -119 -136 -115 -4 4 5
|
||||||
|
31 20 61 14 30 22 57 17 60 -5 3 -31 -23 -57 -58 -26 -35 -52 -63 -58 -63 -15
|
||||||
|
1 -13 6 137 244 111 176 138 226 127 233 -18 11 -22 6 -159 -181 -62 -85 -117
|
||||||
|
-159 -122 -165 -20 -20 5 59 38 124 38 73 49 119 35 140 -17 26 -36 3 -76 -93
|
||||||
|
-37 -89 -55 -116 -55 -82 0 13 85 222 129 316 11 25 21 54 21 66 0 11 14 49
|
||||||
|
31 83 42 84 93 120 324 229 105 49 249 119 320 155 124 63 145 72 145 63z
|
||||||
|
m-1110 -178 c0 -7 -9 -40 -19 -73 -10 -33 -24 -79 -30 -102 -8 -28 -17 -43
|
||||||
|
-27 -43 -11 0 -14 6 -10 16 3 9 18 61 33 115 17 63 31 99 40 99 7 0 13 -6 13
|
||||||
|
-12z m-2799 -437 c33 -74 57 -136 54 -139 -14 -14 -36 19 -88 134 -31 71 -57
|
||||||
|
133 -57 137 0 5 7 7 16 5 11 -2 39 -53 75 -137z m171 -293 c31 -51 54 -96 52
|
||||||
|
-100 -8 -13 -16 -5 -78 85 -51 75 -62 107 -38 107 4 0 33 -42 64 -92z m670
|
||||||
|
-534 c183 -130 335 -238 337 -240 3 -3 0 -9 -5 -14 -21 -21 -363 210 -593 400
|
||||||
|
-86 71 -103 90 -82 90 5 0 159 -106 343 -236z m-232 34 c0 -5 -7 -11 -16 -15
|
||||||
|
-23 -8 -106 87 -91 105 8 10 21 3 59 -35 26 -26 48 -51 48 -55z m416 -259
|
||||||
|
c115 -72 213 -135 219 -140 14 -14 -93 25 -155 56 -46 23 -325 196 -339 210
|
||||||
|
-2 3 12 5 31 5 29 0 78 -27 244 -131z m2142 -78 c128 -65 299 -84 505 -56 71
|
||||||
|
9 131 14 134 12 13 -13 -12 -26 -73 -38 -36 -7 -69 -19 -71 -26 -8 -20 -6 -20
|
||||||
|
75 -14 41 4 76 3 78 0 2 -4 -45 -24 -105 -44 -102 -34 -154 -65 -137 -83 4 -4
|
||||||
|
44 -6 89 -6 73 1 79 0 61 -13 -140 -108 -387 -71 -529 77 -51 54 -66 80 -47
|
||||||
|
80 4 0 41 -9 81 -20 40 -12 79 -19 85 -17 6 2 -35 34 -91 71 -57 37 -103 74
|
||||||
|
-103 82 0 18 3 18 48 -5z m178 -339 c144 -58 217 -75 289 -69 33 3 68 9 78 12
|
||||||
|
12 5 17 2 17 -12 0 -16 -15 -22 -90 -38 -115 -24 -123 -45 -16 -45 65 0 99
|
||||||
|
-10 84 -26 -3 -2 -52 -9 -111 -16 -128 -14 -140 -19 -110 -50 18 -17 37 -23
|
||||||
|
90 -26 38 -2 72 -7 76 -12 4 -4 -49 -15 -118 -25 -136 -20 -145 -26 -100 -70
|
||||||
|
21 -22 33 -25 99 -25 41 0 77 -4 80 -8 3 -4 -22 -23 -54 -40 -141 -78 -309
|
||||||
|
-38 -341 80 -5 22 -8 43 -5 46 3 3 24 0 47 -7 22 -7 43 -10 46 -8 2 3 -12 26
|
||||||
|
-31 52 -27 35 -36 56 -36 86 0 50 12 55 85 34 31 -9 60 -14 63 -10 4 4 -42 53
|
||||||
|
-102 109 -148 139 -140 149 60 68z m-558 -315 c7 -6 20 -26 27 -44 14 -33 55
|
||||||
|
-228 55 -259 0 -9 -21 11 -46 45 -75 100 -194 199 -194 161 0 -5 53 -66 118
|
||||||
|
-136 64 -69 122 -133 129 -142 14 -21 28 -102 16 -102 -4 0 -24 28 -43 62 -43
|
||||||
|
75 -161 202 -234 253 -46 32 -58 36 -71 25 -8 -7 -15 -16 -15 -21 0 -4 32 -27
|
||||||
|
70 -50 81 -48 85 -52 65 -69 -15 -13 -42 4 -154 98 l-33 28 63 46 c95 67 101
|
||||||
|
69 134 52 16 -8 51 -38 77 -67 45 -50 47 -51 48 -25 0 17 -18 50 -50 92 -51
|
||||||
|
66 -51 80 0 70 14 -3 31 -11 38 -17z"/>
|
||||||
|
<path d="M3267 12306 c-4 -10 18 -29 72 -60 43 -25 83 -46 89 -46 16 0 15 -4
|
||||||
|
-8 -50 -11 -22 -20 -42 -20 -45 0 -11 24 -4 42 12 17 15 18 14 19 -33 0 -27 4
|
||||||
|
-69 8 -94 8 -45 8 -45 19 -18 32 78 26 225 -12 263 -18 18 -172 85 -196 85 -4
|
||||||
|
0 -10 -6 -13 -14z"/>
|
||||||
|
<path d="M2851 11936 c-36 -39 -57 -166 -27 -166 9 0 21 31 36 90 12 50 20 93
|
||||||
|
18 95 -3 3 -15 -6 -27 -19z"/>
|
||||||
|
<path d="M2940 11926 c0 -7 -3 -34 -6 -60 -5 -37 -4 -46 8 -46 10 0 18 14 22
|
||||||
|
38 10 60 7 82 -9 82 -8 0 -15 -6 -15 -14z"/>
|
||||||
|
<path d="M3021 11830 l1 -95 16 35 c21 46 21 99 -1 130 -17 24 -17 22 -16 -70z"/>
|
||||||
|
<path d="M3115 11870 c-3 -5 -7 -37 -7 -71 -1 -62 17 -99 41 -85 15 10 14 139
|
||||||
|
-1 154 -15 15 -25 15 -33 2z"/>
|
||||||
|
<path d="M3215 11831 c-8 -14 7 -151 17 -157 17 -11 28 11 36 74 7 52 6 64 -8
|
||||||
|
77 -19 17 -36 19 -45 6z"/>
|
||||||
|
<path d="M3320 11783 c-1 -57 23 -173 36 -173 36 0 25 123 -16 172 l-19 23 -1
|
||||||
|
-22z"/>
|
||||||
|
<path d="M3403 11768 c3 -18 18 -111 33 -205 14 -95 30 -173 35 -173 5 0 9 69
|
||||||
|
10 153 l1 152 19 -75 c10 -41 24 -114 31 -162 7 -49 15 -88 19 -88 13 0 29 89
|
||||||
|
29 157 0 76 -19 157 -47 205 -22 38 -43 47 -43 19 0 -30 -14 -26 -44 14 -34
|
||||||
|
44 -50 45 -43 3z"/>
|
||||||
|
<path d="M2872 11240 c4 -154 41 -138 42 19 1 45 -3 56 -22 69 l-23 15 3 -103z"/>
|
||||||
|
<path d="M2963 11199 c4 -46 7 -99 7 -117 0 -26 4 -33 17 -30 13 2 21 23 33
|
||||||
|
83 8 44 20 80 25 80 6 0 16 -34 22 -75 18 -109 18 -109 36 -68 21 47 22 117 1
|
||||||
|
146 -19 27 -58 48 -108 58 l-39 7 6 -84z"/>
|
||||||
|
<path d="M2766 11203 c-4 -32 -10 -73 -13 -90 -5 -30 -3 -33 21 -33 l26 0 0
|
||||||
|
90 c0 70 -3 90 -14 90 -9 0 -16 -18 -20 -57z"/>
|
||||||
|
<path d="M3180 11205 c-10 -12 -8 -36 6 -116 16 -94 32 -125 51 -105 8 7 20
|
||||||
|
180 15 196 -2 6 -16 17 -32 25 -24 13 -30 13 -40 0z"/>
|
||||||
|
<path d="M3317 11154 c-11 -4 -15 -12 -12 -27 2 -12 11 -53 20 -90 17 -78 30
|
||||||
|
-107 48 -107 10 0 11 20 4 91 -4 50 -5 94 -2 98 15 15 45 -46 65 -133 24 -105
|
||||||
|
43 -133 67 -101 11 15 13 36 8 90 -8 80 -29 130 -66 158 -27 19 -98 30 -132
|
||||||
|
21z"/>
|
||||||
|
<path d="M3532 11079 c3 -8 22 -63 43 -124 21 -60 42 -114 47 -119 12 -15 10
|
||||||
|
106 -4 145 -15 44 -44 86 -70 100 -17 9 -20 9 -16 -2z"/>
|
||||||
|
<path d="M5105 8785 c3 -99 8 -220 12 -270 6 -88 7 -89 20 -57 34 82 22 333
|
||||||
|
-21 462 -15 43 -15 36 -11 -135z"/>
|
||||||
|
<path d="M2035 9022 c-88 -48 -141 -90 -223 -173 -206 -207 -352 -503 -328
|
||||||
|
-661 4 -27 11 -48 15 -48 4 0 21 51 38 113 59 213 155 398 303 585 67 84 84
|
||||||
|
101 96 91 12 -9 6 -21 -35 -68 -200 -232 -332 -537 -372 -864 -27 -221 2 -693
|
||||||
|
56 -908 17 -69 65 -192 72 -186 2 3 -10 87 -26 188 -48 292 -56 380 -55 604 0
|
||||||
|
231 12 325 65 524 84 313 146 434 356 693 57 70 103 130 103 133 0 10 -15 5
|
||||||
|
-65 -23z"/>
|
||||||
|
<path d="M2269 8883 c-188 -176 -397 -720 -440 -1147 -12 -114 -2 -247 18
|
||||||
|
-267 5 -5 41 167 80 384 40 215 84 433 98 482 33 117 144 341 238 483 42 61
|
||||||
|
71 112 66 112 -6 0 -32 -21 -60 -47z"/>
|
||||||
|
<path d="M2323 8806 c-68 -72 -147 -217 -208 -380 -45 -122 -107 -363 -131
|
||||||
|
-511 -23 -137 -25 -395 -4 -440 13 -29 14 -25 22 75 33 430 97 738 197 955 21
|
||||||
|
45 73 142 116 216 43 74 79 137 82 142 2 4 0 7 -5 7 -5 0 -37 -29 -69 -64z"/>
|
||||||
|
<path d="M2475 8809 c-23 -7 -43 -29 -90 -101 -116 -180 -156 -278 -167 -402
|
||||||
|
-6 -74 19 -47 57 61 54 154 83 207 207 378 41 57 39 76 -7 64z"/>
|
||||||
|
<path d="M2508 8688 c-78 -86 -168 -311 -168 -424 0 -45 11 -62 27 -41 5 6 17
|
||||||
|
50 27 97 21 104 79 227 140 298 32 37 46 63 46 83 0 42 -25 37 -72 -13z"/>
|
||||||
|
<path d="M2631 8633 c-54 -56 -102 -147 -126 -238 -17 -66 -20 -145 -6 -129
|
||||||
|
17 16 193 406 187 412 -4 3 -28 -17 -55 -45z"/>
|
||||||
|
<path d="M2720 8583 c-48 -49 -73 -119 -106 -295 -32 -171 -33 -183 -15 -183
|
||||||
|
7 0 21 24 31 55 9 30 45 130 79 223 89 241 92 280 11 200z"/>
|
||||||
|
<path d="M2852 8554 c-32 -22 -36 -34 -76 -206 -31 -132 -35 -162 -25 -180 10
|
||||||
|
-18 13 -19 17 -8 2 8 31 90 63 181 54 152 71 229 51 229 -4 0 -18 -7 -30 -16z"/>
|
||||||
|
<path d="M2957 8500 c-31 -52 -131 -530 -114 -546 20 -20 41 35 72 189 39 196
|
||||||
|
48 225 86 294 38 69 38 93 1 93 -20 0 -32 -8 -45 -30z"/>
|
||||||
|
<path d="M3112 8470 c-25 -27 -123 -453 -108 -468 13 -12 26 20 105 251 l80
|
||||||
|
237 -29 0 c-16 0 -37 -9 -48 -20z"/>
|
||||||
|
<path d="M3230 8408 c-29 -47 -50 -122 -56 -203 l-5 -70 40 107 c38 103 61
|
||||||
|
198 47 198 -3 0 -15 -15 -26 -32z"/>
|
||||||
|
<path d="M3325 8391 c-27 -54 -45 -144 -45 -232 0 -148 11 -136 52 56 20 99
|
||||||
|
37 186 38 193 0 23 -30 12 -45 -17z"/>
|
||||||
|
<path d="M3436 8408 c-12 -41 -46 -292 -46 -340 0 -54 11 -80 25 -59 10 17 75
|
||||||
|
310 75 339 0 46 -44 94 -54 60z"/>
|
||||||
|
<path d="M3546 8300 c-20 -85 -31 -303 -18 -345 l9 -30 11 40 c39 141 54 367
|
||||||
|
25 396 -8 8 -15 -7 -27 -61z"/>
|
||||||
|
<path d="M3662 8348 c-12 -15 -22 -418 -11 -418 19 0 28 43 42 210 14 174 14
|
||||||
|
186 -2 203 -15 15 -20 16 -29 5z"/>
|
||||||
|
<path d="M3781 8065 c0 -231 2 -267 13 -252 21 28 36 131 36 252 0 121 -15
|
||||||
|
224 -36 252 -11 15 -13 -21 -13 -252z"/>
|
||||||
|
<path d="M3883 8280 c17 -135 63 -410 68 -410 3 0 9 23 12 50 12 103 -28 325
|
||||||
|
-68 375 -16 19 -16 19 -12 -15z"/>
|
||||||
|
<path d="M4000 8278 c0 -7 21 -109 47 -225 40 -182 49 -213 65 -213 14 0 17 5
|
||||||
|
13 23 -5 22 -75 416 -75 423 0 11 -50 2 -50 -8z"/>
|
||||||
|
<path d="M4122 8158 c23 -57 45 -107 50 -112 12 -15 10 76 -3 115 -15 44 -56
|
||||||
|
99 -74 99 -10 0 -2 -29 27 -102z"/>
|
||||||
|
<path d="M4193 8238 c45 -112 251 -577 255 -574 8 9 -29 168 -59 249 -56 151
|
||||||
|
-161 337 -191 337 -6 0 -8 -6 -5 -12z"/>
|
||||||
|
<path d="M4290 8234 c0 -11 145 -244 151 -244 4 0 2 24 -3 53 -12 64 -53 142
|
||||||
|
-87 166 -30 20 -61 33 -61 25z"/>
|
||||||
|
<path d="M4567 8093 c221 -334 345 -701 394 -1168 19 -175 16 -628 -5 -794
|
||||||
|
-65 -529 -248 -999 -565 -1451 -78 -112 -91 -152 -38 -118 34 23 290 430 372
|
||||||
|
593 163 322 261 664 296 1030 15 152 6 573 -15 750 -41 338 -129 691 -223 895
|
||||||
|
-60 132 -184 349 -210 370 -14 11 -40 20 -58 20 l-32 0 84 -127z"/>
|
||||||
|
<path d="M4647 8194 c-8 -9 3 -29 78 -144 149 -227 200 -377 299 -893 72 -371
|
||||||
|
79 -453 73 -816 -6 -323 -7 -331 -77 -580 -102 -360 -262 -714 -456 -1006
|
||||||
|
-102 -153 -188 -259 -334 -409 -205 -211 -357 -329 -540 -421 -101 -50 -133
|
||||||
|
-72 -124 -86 19 -32 153 36 376 188 257 176 345 259 548 514 313 393 535 884
|
||||||
|
619 1373 35 201 44 318 44 561 0 355 -33 632 -114 949 -88 344 -192 572 -329
|
||||||
|
729 -41 47 -51 53 -63 41z"/>
|
||||||
|
<path d="M4780 8167 c0 -8 45 -104 100 -213 148 -296 203 -465 275 -848 48
|
||||||
|
-258 58 -397 52 -736 -6 -371 -21 -458 -154 -880 -139 -444 -306 -738 -649
|
||||||
|
-1145 -141 -167 -149 -174 -301 -295 -79 -63 -143 -117 -143 -122 0 -14 19 -9
|
||||||
|
78 24 294 164 553 437 767 812 72 124 224 442 293 612 77 189 136 443 164 704
|
||||||
|
16 160 16 607 -1 770 -35 342 -112 628 -250 932 -60 131 -69 186 -18 109 43
|
||||||
|
-65 222 -555 267 -729 50 -198 54 -252 55 -697 0 -358 -3 -437 -18 -535 -46
|
||||||
|
-292 -129 -558 -271 -867 -187 -408 -522 -849 -801 -1055 -49 -37 -165 -107
|
||||||
|
-257 -155 -153 -80 -179 -98 -163 -115 8 -7 241 100 345 158 489 275 925 909
|
||||||
|
1145 1667 83 282 105 436 112 782 8 375 -21 642 -101 950 -84 319 -222 588
|
||||||
|
-399 780 -70 76 -127 117 -127 92z"/>
|
||||||
|
<path d="M4483 8088 c19 -42 78 -172 132 -291 67 -149 101 -214 110 -211 11 5
|
||||||
|
11 15 -2 57 -48 163 -114 307 -195 424 -70 102 -84 108 -45 21z"/>
|
||||||
|
<path d="M4913 8144 c-3 -9 6 -28 24 -47 40 -43 189 -253 246 -347 75 -125 96
|
||||||
|
-187 186 -550 84 -343 86 -359 86 -755 0 -367 -10 -473 -61 -705 -89 -397
|
||||||
|
-331 -943 -562 -1263 -133 -185 -478 -524 -681 -669 -76 -55 -109 -84 -102
|
||||||
|
-91 11 -11 215 104 361 204 266 182 475 432 729 873 193 334 334 794 397 1291
|
||||||
|
25 193 25 572 1 745 -63 448 -205 841 -404 1118 -71 98 -106 138 -160 180 -47
|
||||||
|
37 -51 38 -60 16z"/>
|
||||||
|
<path d="M5096 8072 c-3 -5 20 -39 51 -78 91 -113 119 -161 189 -324 118 -274
|
||||||
|
199 -546 239 -805 49 -317 18 -854 -70 -1205 -112 -449 -242 -751 -481 -1117
|
||||||
|
-292 -450 -517 -659 -931 -866 -90 -45 -176 -91 -191 -103 -38 -31 -21 -46 37
|
||||||
|
-33 70 16 397 181 492 248 105 75 503 475 609 611 188 244 350 521 428 735 70
|
||||||
|
191 169 576 206 800 51 307 45 787 -12 892 -7 13 -9 39 -6 67 5 31 1 58 -10
|
||||||
|
85 -9 23 -34 114 -56 203 -75 302 -113 389 -280 643 -155 235 -194 280 -214
|
||||||
|
247z"/>
|
||||||
|
<path d="M1483 8048 c-55 -69 -76 -183 -77 -413 0 -209 18 -356 60 -503 24
|
||||||
|
-82 61 -168 70 -160 2 3 -9 94 -25 204 -55 372 -62 597 -26 802 7 42 12 78 10
|
||||||
|
80 -1 1 -7 -3 -12 -10z"/>
|
||||||
|
<path d="M2170 8030 c-32 -60 -52 -160 -57 -287 -5 -119 4 -265 14 -236 12 32
|
||||||
|
70 529 63 537 -4 4 -14 -2 -20 -14z"/>
|
||||||
|
<path d="M2308 7970 c-4 -8 -23 -134 -43 -280 -19 -146 -38 -280 -41 -297 -7
|
||||||
|
-38 9 -45 26 -12 17 30 47 197 60 329 12 117 10 287 -2 260z"/>
|
||||||
|
<path d="M4213 7883 c4 -63 12 -95 33 -140 l29 -58 3 63 c3 73 -18 158 -49
|
||||||
|
193 l-20 24 4 -82z"/>
|
||||||
|
<path d="M2426 7873 c-5 -32 -86 -663 -86 -670 0 -2 8 -3 18 -3 15 0 20 14 29
|
||||||
|
98 7 53 23 169 37 257 28 181 38 346 19 352 -6 2 -14 -12 -17 -34z"/>
|
||||||
|
<path d="M2545 7808 c-2 -18 -21 -166 -40 -328 -20 -162 -38 -303 -41 -312 -4
|
||||||
|
-14 1 -18 20 -18 23 0 26 4 26 34 0 18 13 125 30 237 30 204 40 419 20 419 -5
|
||||||
|
0 -12 -15 -15 -32z"/>
|
||||||
|
<path d="M5540 7828 c0 -6 54 -93 119 -192 188 -284 251 -418 310 -652 33
|
||||||
|
-131 88 -478 97 -613 10 -140 -36 -482 -96 -721 -142 -564 -544 -1262 -956
|
||||||
|
-1660 -157 -152 -414 -343 -778 -581 -104 -68 -184 -125 -178 -127 15 -5 155
|
||||||
|
62 297 143 156 88 345 217 470 320 194 161 628 628 695 749 19 34 51 78 71 97
|
||||||
|
27 25 74 111 181 329 164 332 199 419 222 538 9 46 34 138 56 205 50 150 58
|
||||||
|
182 76 327 27 219 15 521 -31 745 -96 473 -252 812 -482 1048 -56 57 -73 68
|
||||||
|
-73 45z"/>
|
||||||
|
<path d="M3117 7720 c-23 -179 -89 -841 -84 -847 11 -10 17 1 33 58 35 135 75
|
||||||
|
503 73 693 -1 116 -12 167 -22 96z"/>
|
||||||
|
<path d="M2783 7417 c-23 -160 -40 -293 -38 -296 8 -7 41 82 58 154 27 112 38
|
||||||
|
203 39 313 3 188 -15 136 -59 -171z"/>
|
||||||
|
<path d="M3250 7694 c0 -5 -7 -58 -15 -119 -8 -60 -21 -225 -30 -365 -15 -242
|
||||||
|
-30 -401 -41 -445 -4 -16 -3 -17 5 -5 19 30 50 228 60 381 19 274 31 552 26
|
||||||
|
557 -3 3 -5 1 -5 -4z"/>
|
||||||
|
<path d="M3512 7640 c-50 -242 -102 -807 -102 -1114 0 -93 2 -167 5 -164 7 7
|
||||||
|
117 1298 112 1318 -2 8 -9 -10 -15 -40z"/>
|
||||||
|
<path d="M2966 7628 c-3 -13 -19 -144 -36 -293 -17 -148 -34 -287 -37 -307 -5
|
||||||
|
-33 -3 -38 14 -38 18 0 21 9 27 63 4 34 18 127 32 207 14 80 28 200 31 268 5
|
||||||
|
108 4 122 -10 122 -9 0 -19 -10 -21 -22z"/>
|
||||||
|
<path d="M3900 7346 c0 -128 4 -217 10 -221 27 -17 52 303 31 400 -3 17 -14
|
||||||
|
31 -24 33 -16 3 -17 -13 -17 -212z"/>
|
||||||
|
<path d="M4030 7218 c0 -269 7 -302 32 -163 24 138 10 400 -23 421 -5 3 -9
|
||||||
|
-105 -9 -258z"/>
|
||||||
|
<path d="M4190 7443 c0 -29 -28 -524 -34 -600 -5 -58 -4 -63 14 -63 14 0 20 7
|
||||||
|
20 21 0 11 7 156 15 320 14 270 14 302 0 321 -15 22 -15 22 -15 1z"/>
|
||||||
|
<path d="M2627 7340 c-20 -120 -21 -130 -4 -130 10 0 19 31 30 100 20 120 21
|
||||||
|
130 4 130 -10 0 -19 -31 -30 -100z"/>
|
||||||
|
<path d="M4348 7414 c-9 -14 -52 -784 -44 -791 24 -24 36 73 61 472 14 213 14
|
||||||
|
256 2 289 -7 22 -16 35 -19 30z"/>
|
||||||
|
<path d="M4470 6885 c1 -471 5 -510 38 -322 22 128 22 547 -1 666 -32 170 -37
|
||||||
|
125 -37 -344z"/>
|
||||||
|
<path d="M4601 6822 c-1 -408 0 -433 17 -430 15 3 18 21 25 138 20 346 12 558
|
||||||
|
-27 680 -13 40 -14 1 -15 -388z"/>
|
||||||
|
<path d="M4730 7177 c-3 -3 -4 -224 -2 -491 2 -407 5 -486 16 -486 22 0 31
|
||||||
|
154 30 480 -1 231 -5 306 -20 393 -11 60 -21 107 -24 104z"/>
|
||||||
|
<path d="M6112 6918 c-7 -9 0 -66 23 -185 50 -255 58 -350 52 -573 -7 -260
|
||||||
|
-50 -502 -139 -775 -39 -120 -305 -662 -379 -773 -117 -174 -406 -517 -570
|
||||||
|
-677 -183 -178 -267 -242 -663 -507 -164 -109 -197 -138 -160 -138 41 0 318
|
||||||
|
165 467 277 333 252 495 416 843 853 253 318 382 536 487 830 102 284 167 612
|
||||||
|
174 885 7 259 -13 414 -93 722 -20 75 -24 82 -42 61z"/>
|
||||||
|
<path d="M2930 6523 c-1 -80 -17 -180 -65 -404 -31 -142 -45 -229 -42 -257 11
|
||||||
|
-107 38 -57 76 141 41 216 50 278 57 435 6 119 5 132 -9 132 -13 0 -17 -10
|
||||||
|
-17 -47z"/>
|
||||||
|
<path d="M1395 6452 c-176 -154 -592 -620 -713 -799 -57 -85 -69 -115 -25 -63
|
||||||
|
76 89 221 248 409 445 225 236 398 431 428 483 17 28 -15 7 -99 -66z"/>
|
||||||
|
<path d="M1342 6268 c-107 -118 -142 -163 -137 -176 7 -18 -2 -28 209 202 84
|
||||||
|
91 97 109 85 120 -12 11 -36 -11 -157 -146z"/>
|
||||||
|
<path d="M1340 6163 c-167 -160 -216 -213 -218 -235 -2 -15 0 -28 5 -27 4 0
|
||||||
|
82 81 173 180 185 202 263 289 258 289 -2 -1 -100 -94 -218 -207z"/>
|
||||||
|
<path d="M3377 6258 c-4 -24 -9 -65 -13 -91 -6 -44 -5 -49 12 -45 14 2 21 16
|
||||||
|
26 53 4 28 9 67 12 88 5 32 4 37 -13 37 -15 0 -20 -9 -24 -42z"/>
|
||||||
|
<path d="M3987 6180 c-4 -8 -32 -124 -62 -257 -90 -393 -135 -519 -321 -902
|
||||||
|
-63 -129 -114 -236 -114 -238 0 -16 47 29 84 81 163 228 372 812 416 1166 12
|
||||||
|
96 10 179 -3 150z"/>
|
||||||
|
<path d="M3113 6133 c-5 -27 -31 -143 -58 -260 -48 -215 -53 -283 -20 -283 36
|
||||||
|
0 105 357 105 546 0 58 -15 56 -27 -3z"/>
|
||||||
|
<path d="M4707 6100 c-15 -37 -208 -752 -204 -756 9 -9 73 136 110 251 65 198
|
||||||
|
114 425 105 490 -3 20 -6 25 -11 15z"/>
|
||||||
|
<path d="M4216 5774 c-3 -9 -36 -100 -72 -203 -86 -241 -150 -389 -218 -506
|
||||||
|
-50 -84 -209 -303 -355 -487 -29 -38 -50 -68 -46 -68 16 0 107 75 156 128 257
|
||||||
|
280 512 789 545 1090 6 60 3 79 -10 46z"/>
|
||||||
|
<path d="M910 5707 c-252 -199 -578 -802 -670 -1238 -20 -94 -38 -289 -27
|
||||||
|
-278 4 3 13 57 22 121 50 383 221 763 521 1159 66 87 101 131 212 262 27 31
|
||||||
|
-2 18 -58 -26z"/>
|
||||||
|
<path d="M2750 5535 c0 -3 45 -60 100 -126 253 -303 387 -518 479 -764 35 -94
|
||||||
|
41 -68 11 49 -68 266 -331 665 -529 805 -34 23 -61 40 -61 36z"/>
|
||||||
|
<path d="M4394 5354 c-20 -42 -33 -83 -29 -92 8 -23 20 -6 55 77 33 81 35 91
|
||||||
|
19 91 -6 0 -26 -34 -45 -76z"/>
|
||||||
|
<path d="M4217 5033 c-109 -180 -111 -183 -99 -195 11 -11 11 -12 135 193 43
|
||||||
|
69 77 129 77 133 0 3 -6 6 -14 6 -8 0 -52 -62 -99 -137z"/>
|
||||||
|
<path d="M4362 5049 c-53 -101 -62 -123 -51 -135 11 -14 22 3 76 111 57 113
|
||||||
|
67 145 45 145 -4 0 -35 -54 -70 -121z"/>
|
||||||
|
<path d="M4095 4648 c-88 -104 -171 -204 -185 -221 l-25 -32 49 35 c77 54 184
|
||||||
|
158 231 225 47 66 98 162 93 175 -2 4 -75 -77 -163 -182z"/>
|
||||||
|
<path d="M3663 4237 c-73 -51 -131 -96 -129 -102 6 -18 45 -6 99 29 51 33 179
|
||||||
|
141 185 158 10 23 -35 -2 -155 -85z"/>
|
||||||
|
<path d="M3337 3258 c-3 -13 -13 -67 -22 -122 -15 -82 -16 -99 -4 -107 7 -4
|
||||||
|
15 -7 17 -5 8 9 30 242 23 249 -5 5 -11 -2 -14 -15z"/>
|
||||||
|
<path d="M3296 2270 c9 -100 42 -254 69 -327 28 -72 116 -245 122 -239 5 5
|
||||||
|
-176 594 -189 616 -5 9 -6 -11 -2 -50z"/>
|
||||||
|
<path d="M2176 5671 c-17 -18 -83 -362 -126 -656 -56 -381 -50 -658 26 -1150
|
||||||
|
26 -171 47 -245 70 -245 19 0 18 10 -10 153 -41 204 -49 328 -43 685 6 354 6
|
||||||
|
363 90 907 32 206 41 286 34 303 -12 27 -19 27 -41 3z"/>
|
||||||
|
<path d="M2271 5576 c-18 -19 -28 -60 -56 -226 -45 -265 -53 -331 -65 -540
|
||||||
|
-16 -268 6 -624 61 -975 24 -155 45 -225 66 -225 22 0 14 92 -28 315 l-34 180
|
||||||
|
1 340 c2 448 24 724 83 1007 15 70 18 105 11 123 -12 31 -11 31 -39 1z"/>
|
||||||
|
<path d="M2376 5509 c-35 -83 -63 -244 -88 -494 -20 -201 -17 -802 5 -934 9
|
||||||
|
-57 19 -107 22 -109 3 -3 5 153 5 346 0 389 7 527 51 936 16 154 27 281 24
|
||||||
|
284 -3 3 -11 -10 -19 -29z"/>
|
||||||
|
<path d="M2463 5446 c-21 -26 -42 -118 -67 -291 -54 -368 -44 -865 24 -1240
|
||||||
|
19 -107 70 -257 89 -263 16 -5 14 13 -13 130 -65 275 -91 555 -83 908 5 261
|
||||||
|
19 418 57 655 10 65 17 121 16 123 -2 2 -13 -8 -23 -22z"/>
|
||||||
|
<path d="M2540 5385 c-17 -44 -48 -215 -62 -335 -16 -148 -16 -687 0 -835 19
|
||||||
|
-174 42 -304 68 -385 23 -70 57 -131 67 -120 3 3 -10 97 -29 210 -96 576 -101
|
||||||
|
792 -28 1268 24 155 25 222 3 222 -5 0 -14 -11 -19 -25z"/>
|
||||||
|
<path d="M2621 5298 c-21 -65 -40 -175 -52 -300 -15 -169 -7 -645 15 -788 19
|
||||||
|
-128 53 -243 69 -237 13 4 12 25 -9 282 -9 99 -18 284 -21 411 -5 205 -3 253
|
||||||
|
17 411 22 169 22 253 0 253 -5 0 -13 -15 -19 -32z"/>
|
||||||
|
<path d="M2705 5222 c-21 -68 -35 -260 -35 -492 0 -346 29 -604 79 -714 l19
|
||||||
|
-41 1 36 c1 20 -9 119 -21 220 -19 157 -21 224 -19 454 7 517 7 548 -6 552 -6
|
||||||
|
2 -14 -5 -18 -15z"/>
|
||||||
|
<path d="M2783 5015 c-20 -167 -23 -277 -13 -462 12 -198 31 -349 61 -467 19
|
||||||
|
-75 57 -171 65 -163 2 2 -5 66 -16 143 -51 367 -78 664 -83 929 l-2 120 -12
|
||||||
|
-100z"/>
|
||||||
|
<path d="M2861 5020 c-21 -71 27 -589 94 -1015 44 -273 41 -261 60 -245 22 18
|
||||||
|
19 74 -14 255 -27 145 -39 268 -91 909 -10 128 -28 164 -49 96z"/>
|
||||||
|
<path d="M2959 4864 c-1 -121 3 -192 17 -294 22 -162 84 -401 83 -325 0 40
|
||||||
|
-86 666 -93 672 -3 3 -6 -20 -7 -53z"/>
|
||||||
|
<path d="M3052 4731 c-11 -7 -3 -75 42 -362 71 -444 64 -409 87 -409 15 0 19
|
||||||
|
5 16 18 -3 9 -31 181 -63 382 -32 201 -60 368 -63 372 -4 4 -12 3 -19 -1z"/>
|
||||||
|
<path d="M2345 3799 c-5 -14 27 -155 38 -166 3 -3 10 -2 15 1 6 4 2 36 -10 83
|
||||||
|
-20 82 -33 106 -43 82z"/>
|
||||||
|
<path d="M2134 3577 c-8 -21 62 -202 79 -205 28 -6 26 14 -10 116 -34 96 -55
|
||||||
|
124 -69 89z"/>
|
||||||
|
<path d="M2648 2284 c-6 -5 22 -57 99 -192 42 -73 48 -36 10 56 -49 116 -85
|
||||||
|
161 -109 136z"/>
|
||||||
|
<path d="M2510 2206 c-21 -26 301 -459 439 -588 58 -56 190 -158 203 -158 2 0
|
||||||
|
-46 51 -107 113 -147 150 -262 289 -402 485 -63 89 -117 162 -118 162 -1 0 -8
|
||||||
|
-7 -15 -14z"/>
|
||||||
|
<path d="M2865 2158 c-7 -17 142 -328 156 -328 26 0 14 40 -55 178 -76 151
|
||||||
|
-92 175 -101 150z"/>
|
||||||
|
<path d="M2395 2088 c-8 -20 70 -121 88 -115 23 7 15 25 -32 77 -41 46 -50 52
|
||||||
|
-56 38z"/>
|
||||||
|
<path d="M2300 1977 c0 -21 147 -193 243 -284 99 -95 249 -209 368 -280 119
|
||||||
|
-71 235 -133 248 -133 17 0 13 55 -7 80 -11 13 -45 29 -92 41 -146 39 -316
|
||||||
|
164 -561 411 -97 98 -181 178 -188 178 -6 0 -11 -6 -11 -13z"/>
|
||||||
|
<path d="M2805 1980 c-8 -13 213 -315 231 -315 8 0 15 3 17 7 4 11 -217 318
|
||||||
|
-229 318 -7 0 -15 -4 -19 -10z"/>
|
||||||
|
<path d="M2564 1848 c82 -119 368 -379 391 -357 4 5 -391 379 -400 379 -3 0 1
|
||||||
|
-10 9 -22z"/>
|
||||||
|
<path d="M2194 1849 c-8 -13 -16 -6 138 -122 108 -82 131 -95 150 -88 13 5 22
|
||||||
|
12 21 16 -2 9 -281 205 -293 205 -5 0 -12 -5 -16 -11z"/>
|
||||||
|
<path d="M3872 1950 c-57 -26 -78 -39 -67 -44 9 -3 29 -3 43 0 46 11 143 64
|
||||||
|
137 74 -9 15 -23 11 -113 -30z"/>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 44 KiB |
43
icon.svg.import
Normal file
43
icon.svg.import
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://b5u0mk2y43ht2"
|
||||||
|
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://icon.svg"
|
||||||
|
dest_files=["res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
|
svg/scale=1.0
|
||||||
|
editor/scale_with_editor_scale=false
|
||||||
|
editor/convert_colors_with_editor_theme=false
|
||||||
15
import_manager.gd
Normal file
15
import_manager.gd
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
@tool class_name ImportManager extends EditorScenePostImport
|
||||||
|
|
||||||
|
|
||||||
|
# NOTE: Example of editing an import
|
||||||
|
#func _post_import(scene: Node) -> Object:
|
||||||
|
# if scene.name == "balls":
|
||||||
|
# scene.name = "bodies"
|
||||||
|
# setup_balls_scene(scene)
|
||||||
|
|
||||||
|
# return scene # NOTE: Must return the scene no matter what
|
||||||
|
|
||||||
|
#func setup_balls_scene(scene: Node) -> void:
|
||||||
|
# for node in scene.get_children():
|
||||||
|
# # NOTE: Would do further logic here
|
||||||
|
# setup_balls_scene(node)
|
||||||
1
import_manager.gd.uid
Normal file
1
import_manager.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://jfenmjssu7v7
|
||||||
56
project.godot
Normal file
56
project.godot
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
; Engine configuration file.
|
||||||
|
; It's best edited using the editor UI and not directly,
|
||||||
|
; since the parameters that go here are not all obvious.
|
||||||
|
;
|
||||||
|
; Format:
|
||||||
|
; [section] ; section goes between []
|
||||||
|
; param=value ; assign values to parameters
|
||||||
|
|
||||||
|
config_version=5
|
||||||
|
|
||||||
|
[application]
|
||||||
|
|
||||||
|
config/name="Game Shell"
|
||||||
|
config/description="A shell setup to load core game related modules such as a multiplayer lobby client or the core game files."
|
||||||
|
run/main_scene="uid://04nv87epssf4"
|
||||||
|
run/print_header=false
|
||||||
|
config/features=PackedStringArray("4.5", "Forward Plus")
|
||||||
|
run/max_fps=30
|
||||||
|
boot_splash/bg_color=Color(0, 0, 0, 1)
|
||||||
|
boot_splash/image="uid://cwqth1sgffu3c"
|
||||||
|
config/icon="res://icon.svg"
|
||||||
|
boot_splash/minimum_display_time=2500
|
||||||
|
|
||||||
|
[autoload]
|
||||||
|
|
||||||
|
Globals="*res://globals/globals.gd"
|
||||||
|
MessageBus="*res://globals/message_bus.gd"
|
||||||
|
|
||||||
|
[editor]
|
||||||
|
|
||||||
|
movie_writer/fps=30
|
||||||
|
naming/node_name_casing=2
|
||||||
|
naming/script_name_casing=2
|
||||||
|
|
||||||
|
[input]
|
||||||
|
|
||||||
|
aim_incline={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":87,"key_label":0,"unicode":119,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194320,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
aim_decline={
|
||||||
|
"deadzone": 0.2,
|
||||||
|
"events": [Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":83,"key_label":0,"unicode":115,"location":0,"echo":false,"script":null)
|
||||||
|
, Object(InputEventKey,"resource_local_to_scene":false,"resource_name":"","device":-1,"window_id":0,"alt_pressed":false,"shift_pressed":false,"ctrl_pressed":false,"meta_pressed":false,"pressed":false,"keycode":0,"physical_keycode":4194322,"key_label":0,"unicode":0,"location":0,"echo":false,"script":null)
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
[physics]
|
||||||
|
|
||||||
|
3d/physics_engine="Jolt Physics"
|
||||||
|
jolt_physics_3d/simulation/velocity_steps=20
|
||||||
|
jolt_physics_3d/simulation/position_steps=20
|
||||||
|
3d/simulation/position_steps=10
|
||||||
|
3d/simulation/velocity_steps=10
|
||||||
5
scenes/environments/base_environment.gd
Normal file
5
scenes/environments/base_environment.gd
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
class_name BaseEnvironment extends Node3D
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
pass
|
||||||
1
scenes/environments/base_environment.gd.uid
Normal file
1
scenes/environments/base_environment.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://cvsrejn43b7xu
|
||||||
25
scenes/environments/base_environment.tscn
Normal file
25
scenes/environments/base_environment.tscn
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
[gd_scene load_steps=5 format=3 uid="uid://djtq6hbp70kut"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://cvsrejn43b7xu" path="res://scenes/environments/base_environment.gd" id="1_pm2xn"]
|
||||||
|
|
||||||
|
[sub_resource type="ProceduralSkyMaterial" id="ProceduralSkyMaterial_yw8f4"]
|
||||||
|
|
||||||
|
[sub_resource type="Sky" id="Sky_uwrxv"]
|
||||||
|
sky_material = SubResource("ProceduralSkyMaterial_yw8f4")
|
||||||
|
|
||||||
|
[sub_resource type="Environment" id="Environment_jtak5"]
|
||||||
|
background_mode = 2
|
||||||
|
sky = SubResource("Sky_uwrxv")
|
||||||
|
ambient_light_source = 3
|
||||||
|
reflected_light_source = 2
|
||||||
|
|
||||||
|
[node name="base_environment" type="Node3D"]
|
||||||
|
script = ExtResource("1_pm2xn")
|
||||||
|
|
||||||
|
[node name="world" type="WorldEnvironment" parent="."]
|
||||||
|
environment = SubResource("Environment_jtak5")
|
||||||
|
|
||||||
|
[node name="sun" type="DirectionalLight3D" parent="."]
|
||||||
|
transform = Transform3D(0.49999997, 0.43301272, -0.75000006, 0, 0.8660254, 0.50000006, 0.86602545, -0.24999999, 0.43301266, 0, 225, 0)
|
||||||
|
|
||||||
|
[node name="sounds" type="Node3D" parent="."]
|
||||||
9
scenes/screens/start_screen/start.gd
Normal file
9
scenes/screens/start_screen/start.gd
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
class_name StartMenu extends Node3D
|
||||||
|
|
||||||
|
|
||||||
|
@onready var base_environment: Node = $base_environment
|
||||||
|
@onready var animation_player: AnimationPlayer = $animation_player
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
animation_player.play("rotation")
|
||||||
1
scenes/screens/start_screen/start.gd.uid
Normal file
1
scenes/screens/start_screen/start.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://cywa27h25s1j8
|
||||||
61
scenes/screens/start_screen/start.tscn
Normal file
61
scenes/screens/start_screen/start.tscn
Normal file
@@ -0,0 +1,61 @@
|
|||||||
|
[gd_scene load_steps=7 format=3 uid="uid://1uhmlnh88yq7"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://cywa27h25s1j8" path="res://scenes/screens/start_screen/start.gd" id="1_mqdda"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://djtq6hbp70kut" path="res://scenes/environments/base_environment.tscn" id="2_7nvb2"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://da0ok71rkjpx8" path="res://scenes/ui/start_screen/start_ui.tscn" id="4_hk434"]
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_qell1"]
|
||||||
|
length = 0.001
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("rotation_dolly:rotation")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0),
|
||||||
|
"transitions": PackedFloat32Array(1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(0, 0, 0)]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="Animation" id="Animation_rxs04"]
|
||||||
|
resource_name = "rotation"
|
||||||
|
length = 60.0
|
||||||
|
loop_mode = 1
|
||||||
|
tracks/0/type = "value"
|
||||||
|
tracks/0/imported = false
|
||||||
|
tracks/0/enabled = true
|
||||||
|
tracks/0/path = NodePath("rotation_dolly:rotation")
|
||||||
|
tracks/0/interp = 1
|
||||||
|
tracks/0/loop_wrap = true
|
||||||
|
tracks/0/keys = {
|
||||||
|
"times": PackedFloat32Array(0, 60),
|
||||||
|
"transitions": PackedFloat32Array(1, 1),
|
||||||
|
"update": 0,
|
||||||
|
"values": [Vector3(0, 0, 0), Vector3(0, 6.2831855, 0)]
|
||||||
|
}
|
||||||
|
|
||||||
|
[sub_resource type="AnimationLibrary" id="AnimationLibrary_cn28k"]
|
||||||
|
_data = {
|
||||||
|
&"RESET": SubResource("Animation_qell1"),
|
||||||
|
&"rotation": SubResource("Animation_rxs04")
|
||||||
|
}
|
||||||
|
|
||||||
|
[node name="start_screen" type="Node3D"]
|
||||||
|
script = ExtResource("1_mqdda")
|
||||||
|
|
||||||
|
[node name="base_environment" parent="." instance=ExtResource("2_7nvb2")]
|
||||||
|
|
||||||
|
[node name="rotation_dolly" type="Node3D" parent="."]
|
||||||
|
|
||||||
|
[node name="camera" type="Camera3D" parent="rotation_dolly"]
|
||||||
|
transform = Transform3D(0.9995127, 0.012299462, -0.028690739, 0, 0.9191053, 0.39401212, 0.031215947, -0.39382014, 0.9186573, 0.020791333, 1.2903607, 1.9422052)
|
||||||
|
current = true
|
||||||
|
|
||||||
|
[node name="start_ui" parent="rotation_dolly/camera" instance=ExtResource("4_hk434")]
|
||||||
|
|
||||||
|
[node name="animation_player" type="AnimationPlayer" parent="."]
|
||||||
|
libraries = {
|
||||||
|
&"": SubResource("AnimationLibrary_cn28k")
|
||||||
|
}
|
||||||
1
scenes/ui/start_screen/start_ui.gd
Normal file
1
scenes/ui/start_screen/start_ui.gd
Normal file
@@ -0,0 +1 @@
|
|||||||
|
class_name StartMenuControls extends Control
|
||||||
1
scenes/ui/start_screen/start_ui.gd.uid
Normal file
1
scenes/ui/start_screen/start_ui.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://ykbcl0j1wouh
|
||||||
34
scenes/ui/start_screen/start_ui.tscn
Normal file
34
scenes/ui/start_screen/start_ui.tscn
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
[gd_scene load_steps=3 format=3 uid="uid://da0ok71rkjpx8"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://ykbcl0j1wouh" path="res://scenes/ui/start_screen/start_ui.gd" id="1_mwcbl"]
|
||||||
|
|
||||||
|
[sub_resource type="LabelSettings" id="LabelSettings_o8har"]
|
||||||
|
font_size = 45
|
||||||
|
font_color = Color(1, 0.10980392, 0.02745098, 1)
|
||||||
|
outline_size = 5
|
||||||
|
|
||||||
|
[node name="start_ui" type="Control"]
|
||||||
|
layout_mode = 3
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
script = ExtResource("1_mwcbl")
|
||||||
|
|
||||||
|
[node name="vbox" type="VBoxContainer" parent="."]
|
||||||
|
layout_mode = 1
|
||||||
|
anchors_preset = 15
|
||||||
|
anchor_right = 1.0
|
||||||
|
anchor_bottom = 1.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
alignment = 1
|
||||||
|
|
||||||
|
[node name="alert" type="Label" parent="vbox"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 6
|
||||||
|
text = "No Game PCK Loaded"
|
||||||
|
label_settings = SubResource("LabelSettings_o8har")
|
||||||
|
uppercase = true
|
||||||
67
scripts/client_networking.gd
Normal file
67
scripts/client_networking.gd
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
class_name ClientNetworking extends Node
|
||||||
|
|
||||||
|
|
||||||
|
var peer: ENetMultiplayerPeer
|
||||||
|
|
||||||
|
|
||||||
|
func start_client(address: String = "127.0.0.1", port: int = 8080) -> void:
|
||||||
|
if peer: return
|
||||||
|
|
||||||
|
push_warning("Client Starting... Address: ", address, " Port: ", port)
|
||||||
|
# TODO: Add throbber or other indication of connection attempt.
|
||||||
|
|
||||||
|
peer = ENetMultiplayerPeer.new()
|
||||||
|
peer.create_client(address, port)
|
||||||
|
|
||||||
|
multiplayer.multiplayer_peer = peer
|
||||||
|
multiplayer.connected_to_server.connect(client_connected_to_server)
|
||||||
|
multiplayer.server_disconnected.connect(client_disconnected_from_server)
|
||||||
|
multiplayer.connection_failed.connect(client_connection_failed_to_server)
|
||||||
|
|
||||||
|
|
||||||
|
func _wait_for_connection() -> void:
|
||||||
|
while not peer:
|
||||||
|
await get_tree().process_frame
|
||||||
|
|
||||||
|
while peer.get_connection_status() != 2:
|
||||||
|
await get_tree().process_frame
|
||||||
|
|
||||||
|
func _wait_close_connection():
|
||||||
|
close_connection()
|
||||||
|
|
||||||
|
while peer:
|
||||||
|
await get_tree().process_frame
|
||||||
|
|
||||||
|
|
||||||
|
func client_connected_to_server() -> void:
|
||||||
|
assert(false, "This method needs to be overridden...")
|
||||||
|
|
||||||
|
func client_disconnected_from_server() -> void:
|
||||||
|
assert(false, "This method needs to be overridden...")
|
||||||
|
|
||||||
|
|
||||||
|
func client_connection_failed_to_server() -> void:
|
||||||
|
assert(false, "This method needs to be overridden...")
|
||||||
|
|
||||||
|
|
||||||
|
func close_connection() -> void:
|
||||||
|
if not peer: return
|
||||||
|
|
||||||
|
push_warning("Disconnected from, server...")
|
||||||
|
|
||||||
|
unset_client()
|
||||||
|
|
||||||
|
|
||||||
|
func unset_client() -> void:
|
||||||
|
if not peer: return
|
||||||
|
if not multiplayer:
|
||||||
|
peer.close()
|
||||||
|
peer = null
|
||||||
|
return
|
||||||
|
|
||||||
|
multiplayer.connected_to_server.disconnect(client_connected_to_server)
|
||||||
|
multiplayer.connection_failed.disconnect(client_connection_failed_to_server)
|
||||||
|
multiplayer.server_disconnected.disconnect(client_disconnected_from_server)
|
||||||
|
|
||||||
|
peer.close()
|
||||||
|
peer = null
|
||||||
1
scripts/client_networking.gd.uid
Normal file
1
scripts/client_networking.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://ci57tiuqsx1jp
|
||||||
42
scripts/controllers/networking/game_client.gd
Normal file
42
scripts/controllers/networking/game_client.gd
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
class_name GameClient extends ClientNetworking
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
setup_signals()
|
||||||
|
|
||||||
|
|
||||||
|
func setup_signals() -> void:
|
||||||
|
MessageBus.subscribe("game_start_client", _start_client)
|
||||||
|
|
||||||
|
MessageBus.subscribe("game_wait_for_connection", _wait_for_connection)
|
||||||
|
MessageBus.subscribe("game_close_connection", _wait_close_connection)
|
||||||
|
MessageBus.subscribe("game_peer_disconnected", _on_game_peer_disconnected)
|
||||||
|
|
||||||
|
func _start_client(address: String = "127.0.0.1", port: int = 8080) -> void:
|
||||||
|
if peer: return
|
||||||
|
start_client(address, port)
|
||||||
|
|
||||||
|
func _on_game_peer_disconnected() -> void:
|
||||||
|
close_connection()
|
||||||
|
|
||||||
|
Globals.multiplayer_data.reset()
|
||||||
|
Globals.lobby_data.go_back_to_match_screen()
|
||||||
|
MessageBus.clear_voided_listeners()
|
||||||
|
|
||||||
|
func client_connected_to_server() -> void:
|
||||||
|
push_warning("Connected to server!")
|
||||||
|
|
||||||
|
func close_connection() -> void:
|
||||||
|
if not peer: return
|
||||||
|
|
||||||
|
push_warning("Disconnected from, server...")
|
||||||
|
|
||||||
|
unset_client()
|
||||||
|
|
||||||
|
func client_disconnected_from_server() -> void:
|
||||||
|
push_warning("Disconnected from, server...")
|
||||||
|
|
||||||
|
func client_connection_failed_to_server() -> void:
|
||||||
|
push_warning("Connection failed!")
|
||||||
|
|
||||||
|
unset_client()
|
||||||
1
scripts/controllers/networking/game_client.gd.uid
Normal file
1
scripts/controllers/networking/game_client.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://cjtu1d1j35r32
|
||||||
6
scripts/controllers/networking/game_client.tscn
Normal file
6
scripts/controllers/networking/game_client.tscn
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
[gd_scene load_steps=2 format=3 uid="uid://cbvv2msu13vr2"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://cjtu1d1j35r32" path="res://scripts/controllers/networking/game_client.gd" id="1_tea1p"]
|
||||||
|
|
||||||
|
[node name="client_net" type="Node"]
|
||||||
|
script = ExtResource("1_tea1p")
|
||||||
31
scripts/controllers/networking/game_server.gd
Normal file
31
scripts/controllers/networking/game_server.gd
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
class_name GameServer extends ServerNetworking
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
setup_signals()
|
||||||
|
|
||||||
|
|
||||||
|
func setup_signals() -> void:
|
||||||
|
pass
|
||||||
|
|
||||||
|
func server_client_connected(id: int) -> void:
|
||||||
|
push_warning("Client Connected... ID: ", id)
|
||||||
|
|
||||||
|
if not Globals.game_data.client1:
|
||||||
|
Globals.game_data.client1 = id
|
||||||
|
elif not Globals.game_data.client2:
|
||||||
|
Globals.game_data.client2 = id
|
||||||
|
|
||||||
|
if Globals.game_data.client1 and Globals.game_data.client2:
|
||||||
|
Globals.multiplayer_data.init_match()
|
||||||
|
|
||||||
|
# TODO: Add watch match feature...
|
||||||
|
|
||||||
|
func server_client_disconnected(id: int) -> void:
|
||||||
|
push_warning("Client Disconnected... ID: ", id)
|
||||||
|
|
||||||
|
MessageBus.emit_propagation_clients_only.rpc("game_peer_disconnected", null)
|
||||||
|
|
||||||
|
await get_tree().create_timer(5.0).timeout
|
||||||
|
# NOTE: Quits game server instance.
|
||||||
|
get_tree().quit()
|
||||||
1
scripts/controllers/networking/game_server.gd.uid
Normal file
1
scripts/controllers/networking/game_server.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://bndylf4rwtlkn
|
||||||
6
scripts/controllers/networking/game_server.tscn
Normal file
6
scripts/controllers/networking/game_server.tscn
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
[gd_scene load_steps=2 format=3 uid="uid://bss61m8hfvab3"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://bndylf4rwtlkn" path="res://scripts/controllers/networking/game_server.gd" id="1_3xapr"]
|
||||||
|
|
||||||
|
[node name="server_net" type="Node"]
|
||||||
|
script = ExtResource("1_3xapr")
|
||||||
20
scripts/data/data_bridge.tscn
Normal file
20
scripts/data/data_bridge.tscn
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
[gd_scene load_steps=5 format=3 uid="uid://dy51wny4x53f4"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://b808va021l1w7" path="res://scripts/data/game_data.gd" id="1_hulqm"]
|
||||||
|
[ext_resource type="Script" uid="uid://cai8lpy7e00d6" path="res://scripts/data/game_state.gd" id="2_6ash1"]
|
||||||
|
[ext_resource type="Script" uid="uid://cihlohg5ouy6q" path="res://scripts/data/lobby_data.gd" id="3_80q4n"]
|
||||||
|
[ext_resource type="Script" uid="uid://dof720ujunrw8" path="res://scripts/data/multiplayer_data.gd" id="4_setx2"]
|
||||||
|
|
||||||
|
[node name="data_bridge" type="Node"]
|
||||||
|
|
||||||
|
[node name="game_data" type="Node" parent="."]
|
||||||
|
script = ExtResource("1_hulqm")
|
||||||
|
|
||||||
|
[node name="game_state" type="Node" parent="."]
|
||||||
|
script = ExtResource("2_6ash1")
|
||||||
|
|
||||||
|
[node name="lobby_data" type="Node" parent="."]
|
||||||
|
script = ExtResource("3_80q4n")
|
||||||
|
|
||||||
|
[node name="multiplayer_data" type="Node" parent="."]
|
||||||
|
script = ExtResource("4_setx2")
|
||||||
5
scripts/data/game_data.gd
Normal file
5
scripts/data/game_data.gd
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
class_name GameData extends Node
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
Globals.game_data = self
|
||||||
1
scripts/data/game_data.gd.uid
Normal file
1
scripts/data/game_data.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://b808va021l1w7
|
||||||
32
scripts/data/game_state.gd
Normal file
32
scripts/data/game_state.gd
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
class_name GameState extends Node
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
Globals.game_state = self
|
||||||
|
|
||||||
|
func load_game_scene(scene_str: String) -> void:
|
||||||
|
var scene = load(scene_str).instantiate()
|
||||||
|
var target = get_tree().root.get_node("shell/scene")
|
||||||
|
|
||||||
|
target.add_child(scene)
|
||||||
|
|
||||||
|
func set_game_scene(scene_str: String) -> void:
|
||||||
|
var scene = load(scene_str).instantiate()
|
||||||
|
var target = get_tree().root.get_node("shell/scene")
|
||||||
|
|
||||||
|
if "game" in scene_str:
|
||||||
|
scene.name = "game"
|
||||||
|
elif "lobby" in scene_str:
|
||||||
|
scene.name = "lobby_screen"
|
||||||
|
elif "start" in scene_str:
|
||||||
|
scene.name = "start_screen"
|
||||||
|
|
||||||
|
clear_game_scene(target)
|
||||||
|
|
||||||
|
target.add_child(scene)
|
||||||
|
|
||||||
|
func clear_game_scene(container: Node) -> void:
|
||||||
|
for child in container.get_children():
|
||||||
|
child.queue_free()
|
||||||
|
|
||||||
|
await get_tree().process_frame
|
||||||
1
scripts/data/game_state.gd.uid
Normal file
1
scripts/data/game_state.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://cai8lpy7e00d6
|
||||||
5
scripts/data/lobby_data.gd
Normal file
5
scripts/data/lobby_data.gd
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
class_name LobbyData extends Node
|
||||||
|
|
||||||
|
|
||||||
|
func _init() -> void:
|
||||||
|
Globals.lobby_data = self
|
||||||
1
scripts/data/lobby_data.gd.uid
Normal file
1
scripts/data/lobby_data.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://cihlohg5ouy6q
|
||||||
13
scripts/data/multiplayer_data.gd
Normal file
13
scripts/data/multiplayer_data.gd
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
class_name MultiplayerData extends Node
|
||||||
|
|
||||||
|
|
||||||
|
var is_multiplayer_active: bool = false
|
||||||
|
var multiplayer_synchronizer: MultiplayerSynchronizer = MultiplayerSynchronizer.new()
|
||||||
|
var synchronizer_config: SceneReplicationConfig = SceneReplicationConfig.new()
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
Globals.multiplayer_data = self
|
||||||
|
multiplayer_synchronizer.name = "multiplayer_synchronizer"
|
||||||
|
multiplayer_synchronizer.replication_config = synchronizer_config
|
||||||
|
multiplayer_synchronizer.root_path = "/root/shell"
|
||||||
1
scripts/data/multiplayer_data.gd.uid
Normal file
1
scripts/data/multiplayer_data.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://dof720ujunrw8
|
||||||
47
scripts/server_networking.gd
Normal file
47
scripts/server_networking.gd
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
class_name ServerNetworking extends Node
|
||||||
|
|
||||||
|
|
||||||
|
var peer: ENetMultiplayerPeer
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
func start_server(address: String = "0.0.0.0", port: int = 8080) -> void:
|
||||||
|
if peer: return
|
||||||
|
|
||||||
|
push_warning("Server Starting... Address: ", address, " Port: ", port)
|
||||||
|
|
||||||
|
peer = ENetMultiplayerPeer.new()
|
||||||
|
peer.set_bind_ip(address)
|
||||||
|
|
||||||
|
var state = peer.create_server(port)
|
||||||
|
match state:
|
||||||
|
OK:
|
||||||
|
push_warning("Server Started: ", state)
|
||||||
|
|
||||||
|
multiplayer.multiplayer_peer = peer
|
||||||
|
multiplayer.peer_connected.connect(server_client_connected)
|
||||||
|
multiplayer.peer_disconnected.connect(server_client_disconnected)
|
||||||
|
ERR_ALREADY_IN_USE:
|
||||||
|
peer.close()
|
||||||
|
peer = null
|
||||||
|
start_server(address, port)
|
||||||
|
ERR_CANT_CREATE:
|
||||||
|
push_warning("Couldn't create server...")
|
||||||
|
|
||||||
|
func close_connection() -> void:
|
||||||
|
push_warning("Server Closed...")
|
||||||
|
|
||||||
|
multiplayer.peer_connected.disconnect(server_client_connected)
|
||||||
|
multiplayer.peer_disconnected.disconnect(server_client_disconnected)
|
||||||
|
|
||||||
|
peer.close()
|
||||||
|
peer = null
|
||||||
|
|
||||||
|
func server_client_connected(_id: int) -> void:
|
||||||
|
assert(false, "This method needs to be overridden...")
|
||||||
|
|
||||||
|
func server_client_disconnected(_id: int) -> void:
|
||||||
|
assert(false, "This method needs to be overridden...")
|
||||||
1
scripts/server_networking.gd.uid
Normal file
1
scripts/server_networking.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://bgnr36m8qvbx3
|
||||||
62
shell.gd
Normal file
62
shell.gd
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
class_name Shell extends Node
|
||||||
|
|
||||||
|
|
||||||
|
@onready var game_server: GameServer = $game_server
|
||||||
|
@onready var game_client: GameClient = $game_client
|
||||||
|
|
||||||
|
|
||||||
|
func _ready() -> void:
|
||||||
|
_load_resources()
|
||||||
|
_load_scene()
|
||||||
|
#_parse_args()
|
||||||
|
|
||||||
|
|
||||||
|
func _load_resources():
|
||||||
|
_load_asset_pck()
|
||||||
|
_load_game_pck()
|
||||||
|
_load_lobby_pck()
|
||||||
|
_load_store_pck()
|
||||||
|
|
||||||
|
|
||||||
|
func _load_asset_pck():
|
||||||
|
_load_resource_pck("assets.pck")
|
||||||
|
|
||||||
|
func _load_game_pck():
|
||||||
|
_load_resource_pck("game.pck")
|
||||||
|
|
||||||
|
$data_bridge.free()
|
||||||
|
var data_bridge = Globals.cache_invalidate_load_resource(
|
||||||
|
"res://scripts/data/data_bridge.tscn"
|
||||||
|
).instantiate()
|
||||||
|
|
||||||
|
add_child(data_bridge)
|
||||||
|
move_child(data_bridge, 0)
|
||||||
|
|
||||||
|
func _load_lobby_pck():
|
||||||
|
_load_resource_pck("lobby-client.pck")
|
||||||
|
|
||||||
|
func _load_store_pck():
|
||||||
|
_load_resource_pck("store.pck")
|
||||||
|
|
||||||
|
func _load_resource_pck(target: String):
|
||||||
|
#var TARGET_PCK := OS.get_executable_path().get_base_dir() + "/modules/" + target
|
||||||
|
var TARGET_PCK = "/home/abaddon/Coding/Projects/Active/Godot_Projects/builds/desktop/shell-test/modules/" + target
|
||||||
|
push_warning("PCK Path: ", TARGET_PCK)
|
||||||
|
|
||||||
|
if not FileAccess.file_exists(TARGET_PCK):
|
||||||
|
push_warning(target + " PCK is missing.")
|
||||||
|
return
|
||||||
|
|
||||||
|
var target_pck_loaded := ProjectSettings.load_resource_pack(TARGET_PCK, true)
|
||||||
|
if not target_pck_loaded:
|
||||||
|
push_error("Failed to load " + target + " PCK.")
|
||||||
|
return
|
||||||
|
|
||||||
|
|
||||||
|
func _load_scene():
|
||||||
|
add_child(Globals.multiplayer_data.multiplayer_synchronizer)
|
||||||
|
move_child(Globals.multiplayer_data.multiplayer_synchronizer, 0)
|
||||||
|
|
||||||
|
Globals.game_state.set_game_scene(
|
||||||
|
"res://scenes/screens/start_screen/start.tscn"
|
||||||
|
)
|
||||||
1
shell.gd.uid
Normal file
1
shell.gd.uid
Normal file
@@ -0,0 +1 @@
|
|||||||
|
uid://dbca7qndk7coq
|
||||||
17
shell.tscn
Normal file
17
shell.tscn
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
[gd_scene load_steps=5 format=3 uid="uid://04nv87epssf4"]
|
||||||
|
|
||||||
|
[ext_resource type="Script" uid="uid://dbca7qndk7coq" path="res://shell.gd" id="1_bhs8v"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://dy51wny4x53f4" path="res://scripts/data/data_bridge.tscn" id="1_xa5nf"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://cbvv2msu13vr2" path="res://scripts/controllers/networking/game_client.tscn" id="3_hkpkv"]
|
||||||
|
[ext_resource type="PackedScene" uid="uid://bss61m8hfvab3" path="res://scripts/controllers/networking/game_server.tscn" id="4_cni66"]
|
||||||
|
|
||||||
|
[node name="shell" type="Node"]
|
||||||
|
script = ExtResource("1_bhs8v")
|
||||||
|
|
||||||
|
[node name="data_bridge" parent="." instance=ExtResource("1_xa5nf")]
|
||||||
|
|
||||||
|
[node name="game_client" parent="." instance=ExtResource("3_hkpkv")]
|
||||||
|
|
||||||
|
[node name="game_server" parent="." instance=ExtResource("4_cni66")]
|
||||||
|
|
||||||
|
[node name="scene" type="Node" parent="."]
|
||||||
BIN
splash.png
Normal file
BIN
splash.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 172 KiB |
40
splash.png.import
Normal file
40
splash.png.import
Normal file
@@ -0,0 +1,40 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://cwqth1sgffu3c"
|
||||||
|
path="res://.godot/imported/splash.png-929ed8a00b89ba36c51789452f874c77.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://splash.png"
|
||||||
|
dest_files=["res://.godot/imported/splash.png-929ed8a00b89ba36c51789452f874c77.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/uastc_level=0
|
||||||
|
compress/rdo_quality_loss=0.0
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/channel_remap/red=0
|
||||||
|
process/channel_remap/green=1
|
||||||
|
process/channel_remap/blue=2
|
||||||
|
process/channel_remap/alpha=3
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
||||||
Reference in New Issue
Block a user