diff options
| author | Ritabrata Das <[email protected]> | 2025-02-14 20:44:39 +0530 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-02-14 20:44:39 +0530 |
| commit | 2db93027372bd1b13794f3ab6fc8441eb3e51ebc (patch) | |
| tree | f4076310cb3f2bc2edf8fd3608ebb0eecc30c179 /lib/PacketManager | |
| parent | 1e37498c1f99c1bea1452ff21e6c549bd301d420 (diff) | |
| parent | f664470829ea834de36194a311f08f691005ee01 (diff) | |
Merge pull request #5 from Skipper-is/plugin_manager
Added chat weather plugin
Diffstat (limited to 'lib/PacketManager')
| -rw-r--r-- | lib/PacketManager/packets/FSNETCMD_ENVIRONMENT.py | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/lib/PacketManager/packets/FSNETCMD_ENVIRONMENT.py b/lib/PacketManager/packets/FSNETCMD_ENVIRONMENT.py index c647229..3ede2ec 100644 --- a/lib/PacketManager/packets/FSNETCMD_ENVIRONMENT.py +++ b/lib/PacketManager/packets/FSNETCMD_ENVIRONMENT.py @@ -39,22 +39,38 @@ class FSNETCMD_ENVIRONMENT: #33 flags |= 4 flags |=8 if midair: - flags += 16 - flags += 32 + flags |= 16 + flags |= 32 if can_land_anywhere: - flags += 64 - flags += 128 + flags |= 64 + flags |= 128 buffer = pack("IHHIffff", 33, 0, day_night, flags, *wind, visibility) if with_size: return pack("I", len(buffer))+buffer return buffer @staticmethod - def setTime(buffer:bytes, night:bool, with_size:bool = True): - if with_size: - values = list(unpack("IHHIffff", buffer[4:])) + def set_time(buffer:bytes, night:bool, with_size:bool = True): + if len(buffer)>28: + values = list(unpack("IHHIffff", buffer[4:])) else: - values = list(unpack("IHHIffff", buffer)) + values = list(unpack("IHHIffff", buffer)) if night: values[2] = 1 elif not night: values[2] = 0 - return pack("IHHIffff", *values) + packet = pack("IHHIffff", *values) + if with_size: + return pack("I", len(packet)) + packet + return packet + + @staticmethod + def set_visibility(buffer:bytes, visibility:int, with_size:bool = True): + if len(buffer)>28: #Full data packet + the size + environment = FSNETCMD_ENVIRONMENT(buffer[4:]) + else: + environment = FSNETCMD_ENVIRONMENT(buffer) + environment.visibility = visibility + packet = FSNETCMD_ENVIRONMENT.encode(environment.day_night, True, + environment.flags['blackout'], environment.flags['midair'], + environment.flags['can_land_anywhere'], + environment.wind, visibility, with_size) + return packet
\ No newline at end of file |
