예제 #1
0
파일: conteneur.py 프로젝트: stormi/tsunami
 def __init__(self, parent=None):
     """Constructeur du conteneur"""
     BaseObj.__init__(self)
     self._objets = []
     self._non_uniques = []
     self.parent = parent
     self._construire()
예제 #2
0
파일: cible.py 프로젝트: vlegoff/tsunami
 def __init__(self, cible, nom, probabilite=1, points=1):
     """Constructeur de l'élément."""
     BaseObj.__init__(self)
     self.cible = cible
     self.nom = nom
     self.probabilite = probabilite
     self.points = points
예제 #3
0
파일: obstacle.py 프로젝트: stormi/tsunami
 def __init__(self, nom, desc_survol):
     """Constructeur de l'obstacle."""
     BaseObj.__init__(self)
     self.nom = nom
     self.desc_survol = desc_survol
     self.symbole = ""
     self._construire()
예제 #4
0
    def __init__(self, client, creer_contexte=True):
        """Constructeur d'une instance de connexion.

        On peut y trouver trois informations :
        *   le client connecté
        *   le compte émetteur (une fois qu'il est déclaré)
        *   le personnage connecté (une fois qu'il l'est)
        *   le contexte
        *   la file d'attente des messages à envoyer [1]

        [1] Quand on envoie un message grâce à la fonction 'envoyer',
            on ne l'envoie pas directement au client.
            On stocke le message dans la file d'attente. A chaque tour de
            boucle synchro, ou en cas de déconnexion du client, on lui envoie
            toute la file d'attente d'un coup.

        """
        BaseObj.__init__(self)
        self.client = client
        self.compte = None
        self.joueur = None
        self.file_attente = [] # file d'attente des messages à envoyer
        self.contexte = None
        self.nb_essais = 0
        self.nb_msg = 0 # nombre de messages envoyés
        self.avec_prompt = True
        self._construire()

        if creer_contexte:
            self.contexte = type(self).importeur.interpreteur. \
                contextes["connex:connexion:afficher_MOTD"](self)
            self.contexte.actualiser()
            self.contexte.migrer_contexte("connex:connexion:entrer_nom")
예제 #5
0
 def __init__(self):
     """Constructeur du conteneur"""
     BaseObj.__init__(self)
     self.points_guilde = 10
     self.membres = {}
     self.malus = {}
     self._construire()
예제 #6
0
파일: obstacle.py 프로젝트: wkta/tsunami
 def __init__(self, nom, desc_survol):
     """Constructeur de l'obstacle."""
     BaseObj.__init__(self)
     self.nom = nom
     self.desc_survol = desc_survol
     self.symbole = ""
     self._construire()
예제 #7
0
파일: salle.py 프로젝트: stormi/tsunami
    def __init__(self, zone, mnemonic, x=0, y=0, z=0, valide=True):
        """Constructeur de la salle"""
        BaseObj.__init__(self)
        self._nom_zone = zone
        self._mnemonic = mnemonic
        self.coords = Coordonnees(x, y, z, valide, self)
        self.nom_terrain = "ville"
        self.titre = ""
        self.description = Description(parent=self)
        self.sorties = Sorties(parent=self)
        self.details = Details(parent=self)
        self._personnages = []
        self.objets_sol = ObjetsSol(parent=self)
        self.script = ScriptSalle(self)
        self.interieur = False
        self.illuminee = False
        self.magasin = None
        self.flags = 0

        # Repop
        self.pnj_repop = {}

        # Etendue
        self.etendue = None

        # Affections
        self.affections = {}

        # Décors
        self.decors = []

        self._construire()
예제 #8
0
 def __init__(self, cle):
     """Constructeur de la description flottante."""
     BaseObj.__init__(self)
     self.cle = cle
     self.description = Description(parent=self, scriptable=True)
     self.details = Details(parent=self)
     self._construire()
예제 #9
0
    def __init__(self, nom, modele=None, parent=None):
        """Constructeur d'un membre"""
        BaseObj.__init__(self)
        self.nom = nom
        self.article = "le"
        self.flags = AFFICHABLE
        self.statut = "entier"
        self.groupe = ""
        self.probabilite_atteint = 0
        self.supporte = 3
        self.equipe = []
        self.tenu = None  # l'objet tenu
        self.parent = parent
        self._construire()
        if nom:
            self.recalculer_article()

        # Copie du modèle si existe
        if modele:
            self.nom = modele.nom
            self.article = modele.article
            self.flags = modele.flags
            self.groupe = modele.groupe
            self.probabilite_atteint = modele.probabilite_atteint
            self.supporte = modele.supporte
예제 #10
0
    def __init__(self, nom, symbole, defaut, marge, max, flags=I0, parent=None):
        """Constructeur d'une stat.
        Elle prend les mêmes paramètres que ceux passés dans l'ordre, dans
        la configuration.

        Voir : ./cfg_stats.py

        """
        BaseObj.__init__(self)
        self.nom = nom
        self.symbole = symbole
        self.defaut = defaut
        self.marge_min = 0
        self.marge_max = marge
        self.nom_max = max
        self.flags = flags
        self.parent = parent

        # Valeurs
        self.__base = self.defaut
        self.__variable = 0
        self.__max = None
        if self.parent and max:
            self.__max = getattr(self.parent, "_{}".format(max))

        self._construire()
예제 #11
0
파일: etendue.py 프로젝트: vlegoff/tsunami
    def __setstate__(self, attrs):
        """Récupération de l'objet enregistré."""
        obstacles = {}
        for cle, point in attrs["obstacles"].items():
            if isinstance(cle, str):
                x, y = cle.split("|")
                cle = int(x), int(y)
            obstacles[cle] = point

        attrs["obstacles"] = obstacles

        cotes = {}
        for cle, point in attrs["cotes"].items():
            if isinstance(cle, str):
                x, y = cle.split("|")
                cle = int(x), int(y)
            cotes[cle] = point

        attrs["cotes"] = cotes

        liens = {}
        for cle, point in attrs["liens"].items():
            if isinstance(cle, str):
                x, y = cle.split("|")
                cle = int(x), int(y)
            liens[cle] = point

        attrs["liens"] = liens

        BaseObj.__setstate__(self, attrs)
예제 #12
0
 def __init__(self, evt, auteur, msg):
     """Constructeur d'un commentaire"""
     BaseObj.__init__(self)
     self.evenement = evt
     self.auteur = auteur
     self.contenu = msg
     self.date = datetime.date.today()   
예제 #13
0
    def __init__(self):
        """Constructeur du conteneur"""

        BaseObj.__init__(self)
        self.__annonces = []
        self._deja_vues = {}
        self._construire()
예제 #14
0
 def __init__(self, cle):
     """Constructeur de la description flottante."""
     BaseObj.__init__(self)
     self.cle = cle
     self.description = Description(parent=self, scriptable=True)
     self.details = Details(parent=self)
     self._construire()
예제 #15
0
파일: membre.py 프로젝트: stormi/tsunami
    def __init__(self, nom, modele=None, parent=None):
        """Constructeur d'un membre"""
        BaseObj.__init__(self)
        self.nom = nom
        self.article = "le"
        self.flags = AFFICHABLE
        self.statut = "entier"
        self.groupe = ""
        self.probabilite_atteint = 0
        self.supporte = 3
        self.equipe = []
        self.tenu = None # l'objet tenu
        self.parent = parent
        self._construire()
        if nom:
            self.recalculer_article()

        # Copie du modèle si existe
        if modele:
            self.nom = modele.nom
            self.article = modele.article
            self.flags = modele.flags
            self.groupe = modele.groupe
            self.probabilite_atteint = modele.probabilite_atteint
            self.supporte = modele.supporte
예제 #16
0
파일: conteneur.py 프로젝트: wkta/tsunami
 def __init__(self, parent=None):
     """Constructeur du conteneur"""
     BaseObj.__init__(self)
     self._objets = []
     self._non_uniques = []
     self.parent = parent
     self._construire()
예제 #17
0
파일: compte.py 프로젝트: vlegoff/tsunami
    def detruire(self):
        """Destruction du compte et de ses joueurs."""
        for joueur in list(self.joueurs):
            self.joueurs.remove(joueur)
            joueur.detruire()

        BaseObj.detruire(self)
예제 #18
0
파일: membres.py 프로젝트: vlegoff/tsunami
 def __init__(self):
     """Constructeur du conteneur"""
     BaseObj.__init__(self)
     self.points_guilde = 10
     self.membres = {}
     self.malus = {}
     self._construire()
예제 #19
0
파일: commentaire.py 프로젝트: wkta/tsunami
 def __init__(self, evt, auteur, msg):
     """Constructeur d'un commentaire"""
     BaseObj.__init__(self)
     self.evenement = evt
     self.auteur = auteur
     self.contenu = msg
     self.date = datetime.date.today()
예제 #20
0
파일: stat.py 프로젝트: stormi/tsunami
    def __init__(self, nom, symbole, defaut, marge, max, flags=I0, parent=None):
        """Constructeur d'une stat.
        Elle prend les mêmes paramètres que ceux passés dans l'ordre, dans
        la configuration.

        Voir : ./cfg_stats.py

        """
        BaseObj.__init__(self)
        self.nom = nom
        self.symbole = symbole
        self.defaut = defaut
        self.marge_min = 0
        self.marge_max = marge
        self.nom_max = max
        self.flags = flags
        self.parent = parent

        # Valeurs
        self.__base = self.defaut
        self.__variable = 0
        self.__max = None
        if self.parent and max:
            self.__max = getattr(self.parent, "_{}".format(max))

        self._construire()
예제 #21
0
 def __init__(self, cible, nom, probabilite=1, points=1):
     """Constructeur de l'élément."""
     BaseObj.__init__(self)
     self.cible = cible
     self.nom = nom
     self.probabilite = probabilite
     self.points = points
예제 #22
0
    def detruire(self):
        """Méthode appelée lors de la destruction du personage.
        -   On supprime le personnage de la liste des personnages du squelette
        -   On supprime le personnage de la salle

        """
        BaseObj.detruire(self)
        if self.equipement and self.equipement.squelette and \
                self in self.equipement.squelette.personnages:
            self.equipement.squelette.personnages.remove(self)
        if self.salle:
            self.salle.retirer_personnage(self)

        if self.equipement:
            for membre in self.equipement.membres:
                for objet in membre.equipe:
                    try:
                        importeur.objet.supprimer_objet(objet.identifiant)
                    except KeyError:
                        pass
                if membre.tenu and hasattr(membre.tenu, "identifiant"):
                    try:
                        importeur.objet.supprimer_objet(
                                membre.tenu.identifiant)
                    except KeyError:
                        pass
예제 #23
0
 def __setattr__(self, nom_attr, val_attr):
     """Si nom_attr est dans 'self.stats', modifie 'self.stats'"""
     if not nom_attr.startswith("_") and hasattr(self, "stats") and \
             nom_attr in self.stats.to_dict:
         setattr(self.stats, nom_attr, val_attr)
     else:
         BaseObj.__setattr__(self, nom_attr, val_attr)
예제 #24
0
 def __init__(self, prototype, nombre=1):
     """Constructeur de l'objet."""
     BaseObj.__init__(self)
     self.prototype = prototype
     self.nombre = nombre
     self.identifiant = ""
     self._construire()
예제 #25
0
파일: alerte.py 프로젝트: wkta/tsunami
    def __init__(self, objet, evenement, test, no_ligne, ligne, message,
                 traceback):
        """Cration d'une alerte.

        Les paramètres attendus sont :
            objet -- l'objet scripté
            evenement - le nom de l'évènement exécuté
            test -- le nom du test
            no_ligne -- le numéro à laquel s'est produit l'erreur
            ligne -- la ligne de script elle-même
            message -- le message d'erreur
            traceback -- le traceback complet de l'exception levée.

        """
        BaseObj.__init__(self)
        self.no = self.inc_no()
        self.objet = repr(objet)
        self.date = datetime.now()
        if objet:
            self.type = type(objet).nom_scripting
        else:
            self.type = "inconnu"
        self.evenement = evenement
        self.test = test
        self.no_ligne = no_ligne
        self.ligne = ligne
        self.message = message
        self.traceback = traceback
        self._construire()
예제 #26
0
파일: base.py 프로젝트: vlegoff/tsunami
 def __init__(self, pos):
     """Constructeur d'une perturbation météo"""
     BaseObj.__init__(self)
     self.centre = pos
     self.rayon = randint(ceil(self.rayon_max / 2), self.rayon_max)
     self.duree = randint(ceil(self.duree_max / 1.5), self.duree_max)
     self.age = 0
     self.flags = AUCUN_FLAG
     self.statique = False
     self.dir = randint(0, 7)
     # 0 pour une perturbation en ligne droite, 1 pour aucun changement
     # majeur de direction, jusqu'à 10 pour un comportement aléatoire
     self.alea_dir = 1
     # (X, état renvoyé) avec X par rapport à 10 la fraction du rayon
     # concernée, en partant du centre
     self.etat = [
         (7, "Une perturbation roule au-dessus de votre tête."),
         (10, "Une perturbation gronde non loin."),
     ]
     # Messages renvoyés aux salles sous la perturbation
     self.message_debut = "Une perturbation se forme dans le ciel."
     self.message_fin = "La perturbation se dissipe peu à peu."
     # Message à une salle sur laquelle arrive la perturbation
     self.message_entrer = "Une perturbation arrive {dir}."
     # Message à une salle qui sort de la perturbation
     self.message_sortir = "La perturbation s'éloigne et disparaît au loin."
     # Liste des fins possibles d'une pertu enchaînant sur une autre
     # ("nom d'une pertu", "message d'enchaînement", proba)
     # Le choix d'une pertu est fait aléatoirement en tirant un nombre
     # entre 1 et 100 ; la première perturbation de la liste telle que
     # nombre_tire < proba est choisie (voir nuages pour un exemple).
     self.fins_possibles = []
     self._construire()
예제 #27
0
파일: tag.py 프로젝트: vlegoff/tsunami
 def __init__(self, cle, type):
     """Constructeur de la fiche."""
     BaseObj.__init__(self)
     self.cle = cle
     self.type = type
     self.script = ScriptTag(self)
     self._construire()
예제 #28
0
파일: compte.py 프로젝트: wkta/tsunami
    def detruire(self):
        """Destruction du compte et de ses joueurs."""
        for joueur in list(self.joueurs):
            self.joueurs.remove(joueur)
            joueur.detruire()

        BaseObj.detruire(self)
예제 #29
0
 def __init__(self, membre, rang):
     """Constructeur de la fiche."""
     BaseObj.__init__(self)
     self.membre = membre
     self.rang = rang
     self.recettes = {}
     self._construire()
예제 #30
0
 def __init__(self, prototype, nombre=1):
     """Constructeur de l'objet."""
     BaseObj.__init__(self)
     self.prototype = prototype
     self.nombre = nombre
     self.identifiant = ""
     self._construire()
예제 #31
0
파일: annonces.py 프로젝트: vlegoff/tsunami
    def __init__(self):
        """Constructeur du conteneur"""

        BaseObj.__init__(self)
        self.__annonces = []
        self._deja_vues = {}
        self._construire()
예제 #32
0
    def __init__(self, client, creer_contexte=True):
        """Constructeur d'une instance de connexion.

        On peut y trouver trois informations :
        *   le client connecté
        *   le compte émetteur (une fois qu'il est déclaré)
        *   le personnage connecté (une fois qu'il l'est)
        *   le contexte
        *   la file d'attente des messages à envoyer [1]

        [1] Quand on envoie un message grâce à la fonction 'envoyer',
            on ne l'envoie pas directement au client.
            On stocke le message dans la file d'attente. A chaque tour de
            boucle synchro, ou en cas de déconnexion du client, on lui envoie
            toute la file d'attente d'un coup.

        """
        BaseObj.__init__(self)
        self.client = client
        self.compte = None
        self.joueur = None
        self.file_attente = []  # file d'attente des messages à envoyer
        self.contexte = None
        self.nb_essais = 0
        self.nb_msg = 0  # nombre de messages envoyés
        self.avec_prompt = True
        self._construire()

        if creer_contexte:
            self.contexte = type(self).importeur.interpreteur. \
                contextes["connex:connexion:afficher_MOTD"](self)
            self.contexte.actualiser()
            self.contexte.migrer_contexte("connex:connexion:entrer_nom")
예제 #33
0
파일: trajet.py 프로젝트: stormi/tsunami
 def __init__(self, cle):
     """Constructeur du trajet."""
     BaseObj.__init__(self)
     self.cle = cle
     self.etendue = None
     self.point_depart = None
     self.points = OrderedDict()
예제 #34
0
파일: prototype.py 프로젝트: stormi/tsunami
    def __init__(self, cle):
        """Constructeur d'un type"""
        BaseObj.__init__(self)
        self.cle = cle
        self._attributs = {}
        self.no = 0 # nombre de PNJ créés sur ce prototype
        self.pnj = []

        # Prototypes
        self.nom_singulier = "quelqu'un"
        self.etat_singulier = "se tient ici"
        self.nom_pluriel = "quelques-uns"
        self.etat_pluriel = "se tiennent ici"
        self.noms_sup = []
        self.description = Description(parent=self)
        self._race = None
        self.genre = "aucun"
        self.stats = Stats(self)
        self.squelette = None
        self.equipement = OrderedDict()
        self.niveau = 1
        self.gain_xp = 0
        self.script = ScriptPNJ(self)
        self.a_depecer = {}
        self.entraine_stats = {}
        self.talents = {}
        self.sorts = {}
        self.flags = 0

        # Salles repop
        self.salles_repop = {}

        self._construire()
예제 #35
0
파일: progression.py 프로젝트: wkta/tsunami
 def __init__(self, membre, rang):
     """Constructeur de la fiche."""
     BaseObj.__init__(self)
     self.membre = membre
     self.rang = rang
     self.recettes = {}
     self._construire()
예제 #36
0
파일: modele.py 프로젝트: vlegoff/tsunami
 def __init__(self, cle):
     """Constructeur du modèle."""
     BaseObj.__init__(self)
     self.cle = cle
     self.nom = "un navire"
     self.vehicules = []
     self.salles = {}
     self.poids_max = 200
     self.tirant_eau = 3
     self.fond_plat = False
     self.graph = {}
     self.m_valeur = 1000
     self.duree_construction = 60
     self.description = Description(parent=self)
     self.description_vente = Description(parent=self)
     self.canot = False
     self.masculin = True
     self.peut_conquerir = True
     self.niveau = 5
     self.cale_max = 200
     self.facteur_rames = 0.8
     self.facteurs_orientations = {
             "vent debout": -0.3,
             "au près": 0.5,
             "bon plein": 0.8,
             "largue": 1.2,
             "grand largue": 0.9,
             "vent arrière": 0.7,
     }
     self.descriptions_independantes = False
예제 #37
0
    def __setstate__(self, attrs):
        """Récupération de l'objet enregistré."""
        obstacles = {}
        for cle, point in attrs["obstacles"].items():
            if isinstance(cle, str):
                x, y = cle.split("|")
                cle = int(x), int(y)
            obstacles[cle] = point

        attrs["obstacles"] = obstacles

        cotes = {}
        for cle, point in attrs["cotes"].items():
            if isinstance(cle, str):
                x, y = cle.split("|")
                cle = int(x), int(y)
            cotes[cle] = point

        attrs["cotes"] = cotes

        liens = {}
        for cle, point in attrs["liens"].items():
            if isinstance(cle, str):
                x, y = cle.split("|")
                cle = int(x), int(y)
            liens[cle] = point

        attrs["liens"] = liens

        BaseObj.__setstate__(self, attrs)
예제 #38
0
파일: prototype.py 프로젝트: stormi/tsunami
    def detruire(self):
        """Destruction du prototype."""
        for objet, nb in self.a_depecer:
            if self in objet.depecer_de:
                objet.depecer_de.remove(self)

        BaseObj.detruire(self)
예제 #39
0
파일: alerte.py 프로젝트: stormi/tsunami
    def __init__(self, objet, evenement, test, no_ligne, ligne, message,
            traceback):
        """Cration d'une alerte.

        Les paramètres attendus sont :
            objet -- l'objet scripté
            evenement - le nom de l'évènement exécuté
            test -- le nom du test
            no_ligne -- le numéro à laquel s'est produit l'erreur
            ligne -- la ligne de script elle-même
            message -- le message d'erreur
            traceback -- le traceback complet de l'exception levée.

        """
        BaseObj.__init__(self)
        self.no = self.inc_no()
        self.objet = repr(objet)
        self.date = datetime.now()
        if objet:
            self.type = type(objet).nom_scripting
        else:
            self.type = "inconnu"
        self.evenement = evenement
        self.test = test
        self.no_ligne = no_ligne
        self.ligne = ligne
        self.message = message
        self.traceback = traceback
        self._construire()
예제 #40
0
 def __init__(self, cle):
     """Constructeur du modèle."""
     BaseObj.__init__(self)
     self.cle = cle
     self.nom = "un navire"
     self.vehicules = []
     self.salles = {}
     self.poids_max = 200
     self.tirant_eau = 3
     self.fond_plat = False
     self.graph = {}
     self.m_valeur = 1000
     self.duree_construction = 60
     self.description = Description(parent=self)
     self.description_vente = Description(parent=self)
     self.canot = False
     self.masculin = True
     self.peut_conquerir = True
     self.niveau = 5
     self.cale_max = 200
     self.facteur_rames = 0.8
     self.facteurs_orientations = {
         "vent debout": -0.3,
         "au près": 0.5,
         "bon plein": 0.8,
         "largue": 1.2,
         "grand largue": 0.9,
         "vent arrière": 0.7,
     }
     self.descriptions_independantes = False
예제 #41
0
파일: file.py 프로젝트: stormi/tsunami
 def __init__(self, parent=None):
     """Constructeur de la file, initialement vide."""
     BaseObj.__init__(self)
     self._file = [] # la liste représentant la file d'attente
     self._taille_min = 1 # la taille minimum de la file d'attente
     self._position = 0 # position dans la file
     self.parent = parent
     self._construire()
예제 #42
0
파일: route.py 프로젝트: stormi/tsunami
 def __init__(self, origine):
     """Constructeur de la fiche."""
     BaseObj.__init__(self)
     self.origine = origine
     self.destination = None
     self.salles = []
     self.sorties = []
     self._construire()
예제 #43
0
 def __init__(self, guilde, cle):
     """Constructeur du talent."""
     BaseObj.__init__(self)
     self.guilde = guilde
     self.cle = cle
     self.nom = "un atelier"
     self.matieres = {}
     self._construire()
예제 #44
0
파일: groupe.py 프로젝트: vlegoff/tsunami
 def __init__(self, parent, nom, flags):
     """Constructeur d'un groupe"""
     BaseObj.__init__(self)
     self.nom = nom
     self.parent = parent
     self.groupes_inclus = []
     self.flags = flags
     self._construire()
예제 #45
0
파일: porte.py 프로젝트: wkta/tsunami
 def __init__(self, clef=None):
     """Constructeur de la porte."""
     BaseObj.__init__(self)
     self.ouverte = False
     self._clef = clef if clef is None else clef.cle
     self.verrouillee = False if clef is None else True
     # On passe le statut en CONSTRUIT
     self._construire()
예제 #46
0
 def __init__(self, prototype):
     BaseObj.__init__(self)
     self.nom_singulier = "un bonhomme de neige"
     self.nom_pluriel = "bonhommes de neige"
     self.etat_singulier = "se tient ici"
     self.etat_pluriel = "se tiennent ici"
     self.description = Description(parent=self, scriptable=False)
     self._construire()
예제 #47
0
파일: piece.py 프로젝트: wkta/tsunami
 def __init__(self, nom, couleur, points, fem=True):
     """Constructeur du pion."""
     BaseObj.__init__(self)
     self.nom = nom
     self._couleur = couleur
     self.points = points
     self.fem = fem
     self._construire()
예제 #48
0
파일: file.py 프로젝트: wkta/tsunami
 def __init__(self, parent=None):
     """Constructeur de la file, initialement vide."""
     BaseObj.__init__(self)
     self._file = []  # la liste représentant la file d'attente
     self._taille_min = 1  # la taille minimum de la file d'attente
     self._position = 0  # position dans la file
     self.parent = parent
     self._construire()
예제 #49
0
파일: groupe.py 프로젝트: wkta/tsunami
 def __init__(self, parent, nom, flags):
     """Constructeur d'un groupe"""
     BaseObj.__init__(self)
     self.nom = nom
     self.parent = parent
     self.groupes_inclus = []
     self.flags = flags
     self._construire()
예제 #50
0
파일: atelier.py 프로젝트: stormi/tsunami
 def __init__(self, guilde, cle):
     """Constructeur du talent."""
     BaseObj.__init__(self)
     self.guilde = guilde
     self.cle = cle
     self.nom = "un atelier"
     self.matieres = {}
     self._construire()
예제 #51
0
파일: __init__.py 프로젝트: wkta/tsunami
    def __init__(self):
        """Constructeur du conteneur."""
        BaseObj.__init__(self)
        self._groupes = {}  # nom_groupe:groupe
        self._construire()

        # Dictionnaire associant une adresse de commande à un groupe
        self.commandes = {}
예제 #52
0
 def __init__(self, plante, periode, nom, objet, quantite):
     """Constructeur de la période."""
     BaseObj.__init__(self)
     self.plante = plante
     self.periode = periode
     self.nom = nom
     self.objet = objet
     self.quantite = quantite
예제 #53
0
파일: chemin.py 프로젝트: wkta/tsunami
 def __init__(self, cle):
     """Constructeur du chemin."""
     BaseObj.__init__(self)
     self.cle = cle
     self.salles = OrderedDict()
     self.salles_retour = OrderedDict()
     self.flags = 0
     self._construire()
예제 #54
0
파일: repere.py 프로젝트: vlegoff/tsunami
 def __init__(self, x, y):
     """Constructeur du repère."""
     BaseObj.__init__(self)
     self.x = x
     self.y = y
     self.nom = "un repère indéfini"
     self.description = Description(parent=self)
     self.amplificateur_portee = 1.5
예제 #55
0
    def detruire(self):
        """Destruction du prototype d'objet."""
        # Destruction des objets à dépecer
        for proto in self.depecer_de:
            if self in proto.a_depecer:
                del proto.a_depecer[self]

        BaseObj.detruire(self)
예제 #56
0
 def __init__(self, cle):
     BaseObj.__init__(self)
     self.cle = cle
     self.salle_magasin = None
     self.etendue = None
     self.points = []
     self.commandes = []
     self.cales_seches = []
     self._construire()
예제 #57
0
파일: auberge.py 프로젝트: wkta/tsunami
 def __init__(self, cle):
     """Constructeur du navire."""
     BaseObj.__init__(self)
     self.cle = cle
     self.comptoir = None
     self.titre = "Une auberge"
     self.cle_aubergiste = ""
     self.chambres = {}
     self.vacances = []
예제 #58
0
파일: etats.py 프로젝트: wkta/tsunami
 def __setstate__(self, dico):
     BaseObj.__setstate__(self, {})
     self.personnage = dico["personnage"]
     etats = dico["etats"]
     for tuple in etats:
         cle = tuple[0]
         args = tuple[1:]
         importeur.diffact.ajouter_action("e_{}".format(id(list(cle))), 0,
                                          self.ajouter, cle, *args)
예제 #59
0
 def __init__(self, guilde, parent, nom):
     """Constructeur du type."""
     BaseObj.__init__(self)
     self.guilde = guilde
     self.parent = parent
     self.nom = nom
     self.attributs = []
     self.extensions = []
     self._construire()