Skip to content
This repository was archived by the owner on Apr 27, 2019. It is now read-only.

Commit 839834e

Browse files
committed
Merge pull request #159 from natemontgomery/master
Fix master, thanks ElsIf!
2 parents 7911e5b + 5ca7646 commit 839834e

File tree

15 files changed

+51
-338
lines changed

15 files changed

+51
-338
lines changed

.gitignore

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
.cache
21
*.py[cod]
32

43
# C extensions
@@ -52,5 +51,4 @@ nosetests.xml
5251
# Mac cleanup
5352
.DS_Store
5453

55-
cover
56-
.noseids
54+
cover

README.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22

33
StarryPy is Twisted-based plugin-driven Starbound server wrapper. It is currently in beta.
44

5-
# The build is currently broken while we are applying a PEP8 pull request.
6-
75
## Features
86

97
With the built-in plugins (which are removable):

base_plugin.py

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ class MapOverridePacketsMethods(type):
1212

1313
def __new__(cls, name, bases, cls_dict):
1414
if name != 'BasePlugin':
15-
cls_dict['overridden_methods'] = {}
15+
cls_dict['overridden_packets'] = {}
1616
methods = (
1717
key for key, value in cls_dict.iteritems()
1818
if key not in cls.ignored_methods and callable(value)
@@ -23,7 +23,7 @@ def __new__(cls, name, bases, cls_dict):
2323
packet_name = packet.group('packet_name').upper()
2424
enum = getattr(Packets, packet_name, None)
2525
if enum:
26-
cls_dict['overridden_methods'].setdefault(
26+
cls_dict['overridden_packets'].setdefault(
2727
enum.value, {}
2828
)[packet.group('when')] = packet_method_name
2929

@@ -59,13 +59,11 @@ class BasePlugin(object):
5959
active = False
6060

6161
def __init__(self, *args, **kwargs):
62-
self.overridden_methods = {}
6362
super(BasePlugin, self).__init__(*args, **kwargs)
6463
if self.__class__.__name__ != 'BasePlugin':
65-
for packet, when_dict in self.overridden_methods.iteritems():
66-
self.overridden_methods.setdefault(packet, {})
64+
for packet, when_dict in self.overridden_packets.iteritems():
6765
for when, packet_name in when_dict.iteritems():
68-
self.overridden_methods[packet][when] = getattr(
66+
self.overridden_packets[packet][when] = getattr(
6967
self, packet_name
7068
)
7169

plugin_manager.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ def map_plugin_packets(self, plugin):
275275
"""
276276
Maps plugin overridden packets ready to use in do method.
277277
"""
278-
for packet_id, when_dict in plugin.overridden_methods.iteritems():
278+
for packet_id, when_dict in plugin.overridden_packets.iteritems():
279279
for when, packet_method in when_dict.iteritems():
280280
self.packets.setdefault(
281281
packet_id, {}

plugins/admin_messenger/admin_messenger.py

Lines changed: 25 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ class AdminMessenger(BasePlugin):
99
"""
1010
Adds support to message moderators/admins/owner with a @@ prefixed message.
1111
"""
12-
name = 'admin_messenger'
12+
name = "admin_messenger"
1313
depends = ['player_manager_plugin']
1414

1515
def activate(self):
@@ -26,56 +26,48 @@ def on_chat_sent(self, data):
2626
return False
2727
return True
2828

29-
def add_timestamp(self, add_normalizer=False):
29+
def message_admins(self, message):
30+
now = datetime.now()
3031
if self.config.chattimestamps:
31-
now = datetime.now()
32-
timestamp = '^red;<{}> '.format(now.strftime('%H:%M'))
33-
if add_normalizer:
34-
return '{}^yellow;'.format(timestamp)
35-
return timestamp
32+
timestamp = "^red;<{}> ^yellow;".format(now.strftime("%H:%M"))
3633
else:
37-
return ''
38-
39-
def message_admins(self, message):
40-
timestamp = self.add_timestamp(add_normalizer=True)
41-
message = message.message[2:].decode('utf-8')
42-
34+
timestamp = ""
4335
for protocol in self.factory.protocols.itervalues():
4436
if protocol.player.access_level >= UserLevels.MODERATOR:
4537
protocol.send_chat_message(
46-
'{timestamp}{moderator_colors}'
47-
'ADMIN: ^yellow;<{player_colors}^yellow;> '
48-
'{moderator_colors}{message}'.format(
49-
timestamp=timestamp,
50-
moderator_colors=self.config.colors['moderator'],
51-
player_colors=(
52-
self.protocol.player.colored_name(
53-
self.config.colors
54-
)
55-
),
56-
message=message
38+
"{}{}ADMIN: ^yellow;<{}^yellow;> {}{}".format(
39+
timestamp,
40+
self.config.colors["moderator"],
41+
self.protocol.player.colored_name(self.config.colors),
42+
self.config.colors["moderator"],
43+
message.message[2:].decode("utf-8")
5744
)
5845
)
5946
self.logger.info(
60-
'Received an admin message from %s. Message: %s',
61-
self.protocol.player.name, message
47+
"Received an admin message from %s. Message: %s",
48+
self.protocol.player.name,
49+
message.message[2:].decode("utf-8")
6250
)
6351

6452
@permissions(UserLevels.ADMIN)
6553
def broadcast_message(self, message):
66-
timestamp = self.add_timestamp()
54+
now = datetime.now()
55+
if self.config.chattimestamps:
56+
timestamp = "^red;<{}> ".format(now.strftime("%H:%M"))
57+
else:
58+
timestamp = ""
6759

6860
for protocol in self.factory.protocols.itervalues():
6961
protocol.send_chat_message(
70-
'{}{}BROADCAST: ^red;{}{}'.format(
62+
"{}{}BROADCAST: ^red;{}{}".format(
7163
timestamp,
72-
self.config.colors['admin'],
73-
message.message[3:].decode('utf-8').upper(),
74-
self.config.colors['default']
64+
self.config.colors["admin"],
65+
message.message[3:].decode("utf-8").upper(),
66+
self.config.colors["default"]
7567
)
7668
)
7769
self.logger.info(
78-
'Broadcast from %s. Message: %s',
70+
"Broadcast from %s. Message: %s",
7971
self.protocol.player.name,
80-
message.message[3:].decode('utf-8').upper()
72+
message.message[3:].decode("utf-8").upper()
8173
)

plugins/admin_messenger/test_admin_messenger.py

Lines changed: 0 additions & 195 deletions
This file was deleted.

plugins/announcer_plugin/announcer_plugin.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@
22

33

44
class Announcer(BasePlugin):
5-
"""
5+
'''
66
Broadcasts a message whenever a player joins or leaves the server.
7-
"""
7+
'''
88
name = 'announcer_plugin'
99

10+
def activate(self):
11+
super(Announcer, self).activate()
12+
1013
def after_connect_success(self, data):
1114
self.factory.broadcast(
1215
'{} logged in.'.format(

0 commit comments

Comments
 (0)