Mercurial > libervia-backend
diff sat/plugins/plugin_misc_tarot.py @ 4037:524856bd7b19
massive refactoring to switch from camelCase to snake_case:
historically, Libervia (SàT before) was using camelCase as allowed by PEP8 when using a
pre-PEP8 code, to use the same coding style as in Twisted.
However, snake_case is more readable and it's better to follow PEP8 best practices, so it
has been decided to move on full snake_case. Because Libervia has a huge codebase, this
ended with a ugly mix of camelCase and snake_case.
To fix that, this patch does a big refactoring by renaming every function and method
(including bridge) that are not coming from Twisted or Wokkel, to use fully snake_case.
This is a massive change, and may result in some bugs.
author | Goffi <goffi@goffi.org> |
---|---|
date | Sat, 08 Apr 2023 13:54:42 +0200 |
parents | be6d91572633 |
children |
line wrap: on
line diff
--- a/sat/plugins/plugin_misc_tarot.py Fri Apr 07 15:18:39 2023 +0200 +++ b/sat/plugins/plugin_misc_tarot.py Sat Apr 08 13:54:42 2023 +0200 @@ -49,7 +49,7 @@ class Tarot(object): - def inheritFromRoomGame(self, host): + def inherit_from_room_game(self, host): global RoomGame RoomGame = host.plugins["ROOM-GAME"].__class__ self.__class__ = type( @@ -59,7 +59,7 @@ def __init__(self, host): log.info(_("Plugin Tarot initialization")) self._sessions = memory.Sessions() - self.inheritFromRoomGame(host) + self.inherit_from_room_game(host) RoomGame._init_( self, host, @@ -81,61 +81,61 @@ _("Garde Sans"), _("Garde Contre"), ] - host.bridge.addMethod( - "tarotGameLaunch", + host.bridge.add_method( + "tarot_game_launch", ".plugin", in_sign="asss", out_sign="", - method=self._prepareRoom, + method=self._prepare_room, async_=True, ) # args: players, room_jid, profile - host.bridge.addMethod( - "tarotGameCreate", + host.bridge.add_method( + "tarot_game_create", ".plugin", in_sign="sass", out_sign="", - method=self._createGame, + method=self._create_game, ) # args: room_jid, players, profile - host.bridge.addMethod( - "tarotGameReady", + host.bridge.add_method( + "tarot_game_ready", ".plugin", in_sign="sss", out_sign="", - method=self._playerReady, + method=self._player_ready, ) # args: player, referee, profile - host.bridge.addMethod( - "tarotGamePlayCards", + host.bridge.add_method( + "tarot_game_play_cards", ".plugin", in_sign="ssa(ss)s", out_sign="", method=self.play_cards, ) # args: player, referee, cards, profile - host.bridge.addSignal( - "tarotGamePlayers", ".plugin", signature="ssass" + host.bridge.add_signal( + "tarot_game_players", ".plugin", signature="ssass" ) # args: room_jid, referee, players, profile - host.bridge.addSignal( - "tarotGameStarted", ".plugin", signature="ssass" + host.bridge.add_signal( + "tarot_game_started", ".plugin", signature="ssass" ) # args: room_jid, referee, players, profile - host.bridge.addSignal( - "tarotGameNew", ".plugin", signature="sa(ss)s" + host.bridge.add_signal( + "tarot_game_new", ".plugin", signature="sa(ss)s" ) # args: room_jid, hand, profile - host.bridge.addSignal( - "tarotGameChooseContrat", ".plugin", signature="sss" + host.bridge.add_signal( + "tarot_game_choose_contrat", ".plugin", signature="sss" ) # args: room_jid, xml_data, profile - host.bridge.addSignal( - "tarotGameShowCards", ".plugin", signature="ssa(ss)a{ss}s" + host.bridge.add_signal( + "tarot_game_show_cards", ".plugin", signature="ssa(ss)a{ss}s" ) # args: room_jid, type ["chien", "poignée",...], cards, data[dict], profile - host.bridge.addSignal( - "tarotGameCardsPlayed", ".plugin", signature="ssa(ss)s" + host.bridge.add_signal( + "tarot_game_cards_played", ".plugin", signature="ssa(ss)s" ) # args: room_jid, player, type ["chien", "poignée",...], cards, data[dict], profile - host.bridge.addSignal( - "tarotGameYourTurn", ".plugin", signature="ss" + host.bridge.add_signal( + "tarot_game_your_turn", ".plugin", signature="ss" ) # args: room_jid, profile - host.bridge.addSignal( - "tarotGameScore", ".plugin", signature="ssasass" + host.bridge.add_signal( + "tarot_game_score", ".plugin", signature="ssasass" ) # args: room_jid, xml_data, winners (list of nicks), loosers (list of nicks), profile - host.bridge.addSignal( - "tarotGameInvalidCards", ".plugin", signature="ssa(ss)a(ss)s" + host.bridge.add_signal( + "tarot_game_invalid_cards", ".plugin", signature="ssa(ss)a(ss)s" ) # args: room_jid, game phase, played_cards, invalid_cards, profile self.deck_ordered = [] for value in ["excuse"] + list(map(str, list(range(1, 22)))): @@ -143,10 +143,10 @@ for suit in ["pique", "coeur", "carreau", "trefle"]: for value in list(map(str, list(range(1, 11)))) + ["valet", "cavalier", "dame", "roi"]: self.deck_ordered.append(TarotCard((suit, value))) - self.__choose_contrat_id = host.registerCallback( - self._contratChoosed, with_data=True + self.__choose_contrat_id = host.register_callback( + self._contrat_choosed, with_data=True ) - self.__score_id = host.registerCallback(self._scoreShowed, with_data=True) + self.__score_id = host.register_callback(self._score_showed, with_data=True) def __card_list_to_xml(self, cards_list, elt_name): """Convert a card list to domish element""" @@ -519,13 +519,13 @@ to_jid = jid.JID(room_jid.userhost() + "/" + next_player) # FIXME: gof: self.send(to_jid, "your_turn", profile=profile) - def _contratChoosed(self, raw_data, profile): + def _contrat_choosed(self, raw_data, profile): """Will be called when the contrat is selected @param raw_data: contains the choosed session id and the chosen contrat @param profile_key: profile """ try: - session_data = self._sessions.profileGet(raw_data["session_id"], profile) + session_data = self._sessions.profile_get(raw_data["session_id"], profile) except KeyError: log.warning(_("session id doesn't exist, session has probably expired")) # TODO: send error dialog @@ -533,8 +533,8 @@ room_jid = session_data["room_jid"] referee_jid = self.games[room_jid]["referee"] - player = self.host.plugins["XEP-0045"].getRoomNick(room_jid, profile) - data = xml_tools.XMLUIResult2DataFormResult(raw_data) + player = self.host.plugins["XEP-0045"].get_room_nick(room_jid, profile) + data = xml_tools.xmlui_result_2_data_form_result(raw_data) contrat = data["contrat"] log.debug( _("contrat [%(contrat)s] choosed by %(profile)s") @@ -551,13 +551,13 @@ del self._sessions[raw_data["session_id"]] return d - def _scoreShowed(self, raw_data, profile): + def _score_showed(self, raw_data, profile): """Will be called when the player closes the score dialog @param raw_data: nothing to retrieve from here but the session id @param profile_key: profile """ try: - session_data = self._sessions.profileGet(raw_data["session_id"], profile) + session_data = self._sessions.profile_get(raw_data["session_id"], profile) except KeyError: log.warning(_("session id doesn't exist, session has probably expired")) # TODO: send error dialog @@ -565,7 +565,7 @@ room_jid_s = session_data["room_jid"].userhost() # XXX: empty hand means to the frontend "reset the display"... - self.host.bridge.tarotGameNew(room_jid_s, [], profile) + self.host.bridge.tarot_game_new(room_jid_s, [], profile) del self._sessions[raw_data["session_id"]] return defer.succeed({}) @@ -576,7 +576,7 @@ @cards: cards played (list of tuples) @profile_key: profile """ - profile = self.host.memory.getProfileName(profile_key) + profile = self.host.memory.get_profile_name(profile_key) if not profile: log.error(_("profile %s is unknown") % profile_key) return @@ -587,7 +587,7 @@ elem = self.__card_list_to_xml(TarotCard.from_tuples(cards), "cards_played") self.send(jid.JID(referee), elem, {"player": player}, profile=profile) - def newRound(self, room_jid, profile): + def new_round(self, room_jid, profile): game_data = self.games[room_jid] players = game_data["players"] game_data["first_player"] = None # first player for the current trick @@ -613,7 +613,7 @@ for player in players: msg_elts[player] = self.__card_list_to_xml(hand[player], "hand") - RoomGame.newRound(self, room_jid, (common_data, msg_elts), profile) + RoomGame.new_round(self, room_jid, (common_data, msg_elts), profile) pl_idx = game_data["current_player"] = (game_data["init_player"] + 1) % len( players @@ -626,14 +626,14 @@ """ @param mess_elt: instance of twisted.words.xish.domish.Element """ - client = self.host.getClient(profile) + client = self.host.get_client(profile) from_jid = jid.JID(mess_elt["from"]) room_jid = jid.JID(from_jid.userhost()) - nick = self.host.plugins["XEP-0045"].getRoomNick(client, room_jid) + nick = self.host.plugins["XEP-0045"].get_room_nick(client, room_jid) game_elt = mess_elt.firstChildElement() game_data = self.games[room_jid] - is_player = self.isPlayer(room_jid, nick) + is_player = self.is_player(room_jid, nick) if "players_data" in game_data: players_data = game_data["players_data"] @@ -649,9 +649,9 @@ for player in elt.elements(): players.append(str(player)) signal = ( - self.host.bridge.tarotGameStarted + self.host.bridge.tarot_game_started if elt.name == "started" - else self.host.bridge.tarotGamePlayers + else self.host.bridge.tarot_game_players ) signal(room_jid.userhost(), from_jid.full(), players, profile) @@ -667,21 +667,21 @@ if ( list(status.values()).count("ready") == nb_players ): # everybody is ready, we can start the game - self.newRound(room_jid, profile) + self.new_round(room_jid, profile) elif elt.name == "hand": # a new hand has been received - self.host.bridge.tarotGameNew( + self.host.bridge.tarot_game_new( room_jid.userhost(), self.__xml_to_list(elt), profile ) elif elt.name == "contrat": # it's time to choose contrat form = data_form.Form.fromElement(elt.firstChildElement()) - session_id, session_data = self._sessions.newSession(profile=profile) + session_id, session_data = self._sessions.new_session(profile=profile) session_data["room_jid"] = room_jid - xml_data = xml_tools.dataForm2XMLUI( + xml_data = xml_tools.data_form_2_xmlui( form, self.__choose_contrat_id, session_id ).toXml() - self.host.bridge.tarotGameChooseContrat( + self.host.bridge.tarot_game_choose_contrat( room_jid.userhost(), xml_data, profile ) @@ -752,7 +752,7 @@ data = {"attaquant": elt["attaquant"]} game_data["stage"] = "ecart" game_data["attaquant"] = elt["attaquant"] - self.host.bridge.tarotGameShowCards( + self.host.bridge.tarot_game_show_cards( room_jid.userhost(), "chien", self.__xml_to_list(elt), data, profile ) @@ -790,7 +790,7 @@ cards = TarotCard.from_tuples(self.__xml_to_list(elt)) if mess_elt["type"] == "groupchat": - self.host.bridge.tarotGameCardsPlayed( + self.host.bridge.tarot_game_cards_played( room_jid.userhost(), elt["player"], self.__xml_to_list(elt), @@ -858,7 +858,7 @@ self.send(to_jid, "your_turn", profile=profile) elif elt.name == "your_turn": - self.host.bridge.tarotGameYourTurn(room_jid.userhost(), profile) + self.host.bridge.tarot_game_your_turn(room_jid.userhost(), profile) elif elt.name == "score": form_elt = next(elt.elements(name="x", uri="jabber:x:data")) @@ -869,12 +869,12 @@ for looser in elt.elements(name="looser", uri=NS_CG): loosers.append(str(looser)) form = data_form.Form.fromElement(form_elt) - session_id, session_data = self._sessions.newSession(profile=profile) + session_id, session_data = self._sessions.new_session(profile=profile) session_data["room_jid"] = room_jid - xml_data = xml_tools.dataForm2XMLUI( + xml_data = xml_tools.data_form_2_xmlui( form, self.__score_id, session_id ).toXml() - self.host.bridge.tarotGameScore( + self.host.bridge.tarot_game_score( room_jid.userhost(), xml_data, winners, loosers, profile ) elif elt.name == "error": @@ -885,7 +885,7 @@ invalid_cards = self.__xml_to_list( next(elt.elements(name="invalid", uri=NS_CG)) ) - self.host.bridge.tarotGameInvalidCards( + self.host.bridge.tarot_game_invalid_cards( room_jid.userhost(), elt["phase"], played_cards, @@ -897,5 +897,5 @@ else: log.error(_("Unmanaged card game element: %s") % elt.name) - def getSyncDataForPlayer(self, room_jid, nick): + def get_sync_data_for_player(self, room_jid, nick): return []