aboutsummaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'plugins')
-rw-r--r--plugins/chat_weather_setter.py8
-rw-r--r--plugins/crash_on_ground.py30
-rw-r--r--plugins/radar.py4
-rw-r--r--plugins/refuel.py5
4 files changed, 39 insertions, 8 deletions
diff --git a/plugins/chat_weather_setter.py b/plugins/chat_weather_setter.py
index 5b31a38..675bac5 100644
--- a/plugins/chat_weather_setter.py
+++ b/plugins/chat_weather_setter.py
@@ -13,10 +13,10 @@ class Plugin:
self.plugin_manager = plugin_manager
#self.plugin_manager.register_hook('on_chat', self.on_chat)
self.plugin_manager.register_hook('on_environment_server', self.on_environment)
- self.plugin_manager.register_command('fog', self.fog)
- self.plugin_manager.register_command('sky', self.sky)
- self.plugin_manager.register_command('time', self.time)
- self.plugin_manager.register_command('vis', self.visibility)
+ self.plugin_manager.register_command('fog', self.fog, "Sets fog color. Usage : /fog r,g,b")
+ self.plugin_manager.register_command('sky', self.sky, "Sets sky color. Usage : /sky r,g,b")
+ self.plugin_manager.register_command('time', self.time, "Sets time. Usage : /time <day|night>")
+ self.plugin_manager.register_command('visibility', self.visibility, "Sets Visibilty : /vis <visibilty in meters>", "vis")
def fog(self, full_message, player, message_to_client, message_to_server):
try:
diff --git a/plugins/crash_on_ground.py b/plugins/crash_on_ground.py
new file mode 100644
index 0000000..15b1fbf
--- /dev/null
+++ b/plugins/crash_on_ground.py
@@ -0,0 +1,30 @@
+# This plugin renders the dead plane until crashes in ground
+# Thus disabling mid air dispawning when dead
+from lib.PacketManager.packets import FSNETCMD_REMOVEAIRPLANE, FSNETCMD_READBACK, FSNETCMD_GETDAMAGE
+
+ENABLED = True
+
+class Plugin:
+ def __init__(self):
+ self.plugin_manager = None
+
+ def register(self, plugin_manager):
+ self.plugin_manager = plugin_manager
+ self.plugin_manager.register_hook('on_remove_airplane_server', self.on_death)
+
+ def on_death(self, data, player, message_to_client, message_to_server):
+ if player.aircraft.id != -1:
+ if player.aircraft.id == FSNETCMD_REMOVEAIRPLANE(data).object_id:
+ return True
+ else:
+ decode = FSNETCMD_REMOVEAIRPLANE(data)
+ b = FSNETCMD_GETDAMAGE.encode(decode.object_id, 1, 1,
+ player.aircraft.id, 10000,
+ 11, 0, True)
+ message_to_client.append(b)
+ message_to_server.append(b)
+ a = FSNETCMD_READBACK.encode(2, player.aircraft.id, True)
+ message_to_server.append(a)
+ return False
+ else:
+ return True
diff --git a/plugins/radar.py b/plugins/radar.py
index 7636dc4..ac47b5b 100644
--- a/plugins/radar.py
+++ b/plugins/radar.py
@@ -9,7 +9,7 @@ import struct
import traceback
ENABLED = True
-RADIUS = 5000 # in meters, within this range planes with different IFF can see each other.
+RADIUS = 9000 # in meters, within this range planes with different IFF can see each other.
flying_players = {}
@@ -60,7 +60,7 @@ class Plugin:
try:
# This is a really arbitary position thats hard to reach, better would
# be to randomise it for every time the server starts.
- position_data = struct.pack("3f", 10e7, 10e7, 10e7)
+ position_data = struct.pack("3f", 10e8, 200, 10e8)
if decode.packet_version == 4 or 5:
updated_data = data[:14] + position_data + data[26:]
else:
diff --git a/plugins/refuel.py b/plugins/refuel.py
index ff96699..cde2e03 100644
--- a/plugins/refuel.py
+++ b/plugins/refuel.py
@@ -1,6 +1,7 @@
"""
This plugin enables you to perform air to air refueling.
"""
+from ast import alias
import math
from lib.PacketManager.packets import FSNETCMD_AIRCMD, FSNETCMD_AIRPLANESTATE
from lib import YSchat
@@ -21,8 +22,8 @@ class Plugin:
def register(self, plugin_manager):
self.plugin_manager = plugin_manager
- self.plugin_manager.register_command('refuel', self.refuel)
- self.plugin_manager.register_command('refueler', self.refueler)
+ self.plugin_manager.register_command('refuel', self.refuel, "Allows you to get refuled", alias = "r")
+ self.plugin_manager.register_command('refueler', self.refueler, "Allows other players to refuel from you", alias = "rf")
self.plugin_manager.register_hook('on_flight_data', self.on_flight_data)
self.plugin_manager.register_hook('on_unjoin', self.on_unjoin)