EnergyLink: cleanup the second

This commit is contained in:
Fabian Dill 2022-02-24 06:17:39 +01:00
parent db152e6790
commit 68e9368bb3
3 changed files with 20 additions and 17 deletions

View File

@ -318,16 +318,17 @@ class CommonContext():
logger.info(f"DeathLink: Received from {data['source']}")
async def send_death(self, death_text: str = ""):
logger.info("DeathLink: Sending death to your friends...")
self.last_death_link = time.time()
await self.send_msgs([{
"cmd": "Bounce", "tags": ["DeathLink"],
"data": {
"time": self.last_death_link,
"source": self.player_names[self.slot],
"cause": death_text
}
}])
if self.server and self.server.socket:
logger.info("DeathLink: Sending death to your friends...")
self.last_death_link = time.time()
await self.send_msgs([{
"cmd": "Bounce", "tags": ["DeathLink"],
"data": {
"time": self.last_death_link,
"source": self.player_names[self.slot],
"cause": death_text
}
}])
async def update_death_link(self, death_link):
old_tags = self.tags.copy()

View File

@ -183,7 +183,7 @@ async def game_watcher(ctx: FactorioContext):
}]))
ctx.rcon_client.send_command(
f"/ap-energylink -{value}")
logger.info(f"EnergyLink: Sent {value} Joules")
logger.info(f"EnergyLink: Sent {Utils.format_SI_prefix(value)}J")
await asyncio.sleep(0.1)

14
kvui.py
View File

@ -91,9 +91,9 @@ class ServerToolTip(Label):
pass
class ServerLabel(HoverBehavior, Label):
class HovererableLabel(HoverBehavior, Label):
def __init__(self, *args, **kwargs):
super(ServerLabel, self).__init__(*args, **kwargs)
super(HovererableLabel, self).__init__(*args, **kwargs)
self.layout = FloatLayout()
self.popuplabel = ServerToolTip(text="Test")
self.layout.add_widget(self.popuplabel)
@ -105,6 +105,12 @@ class ServerLabel(HoverBehavior, Label):
def on_leave(self):
App.get_running_app().root.remove_widget(self.layout)
@property
def ctx(self) -> context_type:
return App.get_running_app().ctx
class ServerLabel(HovererableLabel):
def get_text(self):
if self.ctx.server:
ctx = self.ctx
@ -138,10 +144,6 @@ class ServerLabel(HoverBehavior, Label):
else:
return "No current server connection. \nPlease connect to an Archipelago server."
@property
def ctx(self) -> context_type:
return App.get_running_app().ctx
class MainLayout(GridLayout):
pass