MultiServer/CommonClient: We forgot about Item Links again (Hint Priority) (#4314)
* Vi don't forget about itemlinks challenge difficulty impossible * People other than Vi also don't forget about ItemLinks challenge difficulty impossible
This commit is contained in:
parent
781100a571
commit
5dd19fccd0
|
@ -1914,7 +1914,7 @@ async def process_client_cmd(ctx: Context, client: Client, args: dict):
|
||||||
hint = ctx.get_hint(client.team, player, location)
|
hint = ctx.get_hint(client.team, player, location)
|
||||||
if not hint:
|
if not hint:
|
||||||
return # Ignored safely
|
return # Ignored safely
|
||||||
if hint.receiving_player != client.slot:
|
if client.slot not in ctx.slot_set(hint.receiving_player):
|
||||||
await ctx.send_msgs(client,
|
await ctx.send_msgs(client,
|
||||||
[{'cmd': 'InvalidPacket', "type": "arguments", "text": 'UpdateHint: No Permission',
|
[{'cmd': 'InvalidPacket', "type": "arguments", "text": 'UpdateHint: No Permission',
|
||||||
"original_cmd": cmd}])
|
"original_cmd": cmd}])
|
||||||
|
|
|
@ -232,7 +232,7 @@ class JSONtoTextParser(metaclass=HandlerMeta):
|
||||||
|
|
||||||
def _handle_player_id(self, node: JSONMessagePart):
|
def _handle_player_id(self, node: JSONMessagePart):
|
||||||
player = int(node["text"])
|
player = int(node["text"])
|
||||||
node["color"] = 'magenta' if player == self.ctx.slot else 'yellow'
|
node["color"] = 'magenta' if self.ctx.slot_concerns_self(player) else 'yellow'
|
||||||
node["text"] = self.ctx.player_names[player]
|
node["text"] = self.ctx.player_names[player]
|
||||||
return self._handle_color(node)
|
return self._handle_color(node)
|
||||||
|
|
||||||
|
|
4
kvui.py
4
kvui.py
|
@ -371,7 +371,7 @@ class HintLabel(RecycleDataViewBehavior, BoxLayout):
|
||||||
if self.hint["status"] == HintStatus.HINT_FOUND:
|
if self.hint["status"] == HintStatus.HINT_FOUND:
|
||||||
return
|
return
|
||||||
ctx = App.get_running_app().ctx
|
ctx = App.get_running_app().ctx
|
||||||
if ctx.slot == self.hint["receiving_player"]: # If this player owns this hint
|
if ctx.slot_concerns_self(self.hint["receiving_player"]): # If this player owns this hint
|
||||||
# open a dropdown
|
# open a dropdown
|
||||||
self.dropdown.open(self.ids["status"])
|
self.dropdown.open(self.ids["status"])
|
||||||
elif self.selected:
|
elif self.selected:
|
||||||
|
@ -800,7 +800,7 @@ class HintLog(RecycleView):
|
||||||
hint_status_node = self.parser.handle_node({"type": "color",
|
hint_status_node = self.parser.handle_node({"type": "color",
|
||||||
"color": status_colors.get(hint["status"], "red"),
|
"color": status_colors.get(hint["status"], "red"),
|
||||||
"text": status_names.get(hint["status"], "Unknown")})
|
"text": status_names.get(hint["status"], "Unknown")})
|
||||||
if hint["status"] != HintStatus.HINT_FOUND and hint["receiving_player"] == ctx.slot:
|
if hint["status"] != HintStatus.HINT_FOUND and ctx.slot_concerns_self(hint["receiving_player"]):
|
||||||
hint_status_node = f"[u]{hint_status_node}[/u]"
|
hint_status_node = f"[u]{hint_status_node}[/u]"
|
||||||
data.append({
|
data.append({
|
||||||
"receiving": {"text": self.parser.handle_node({"type": "player_id", "text": hint["receiving_player"]})},
|
"receiving": {"text": self.parser.handle_node({"type": "player_id", "text": hint["receiving_player"]})},
|
||||||
|
|
Loading…
Reference in New Issue