33 |
añadiendo los atributos y elementos en la sección correspondiente |
añadiendo los atributos y elementos en la sección correspondiente |
34 |
para que se guarden en los ficheros xml |
para que se guarden en los ficheros xml |
35 |
""" |
""" |
36 |
|
|
37 |
def add_descripcion(self,dificultad,texto): |
def __init__(self, id, conservar_arbol_xml = False, crear_contenidos = True): |
38 |
|
super(Sala_editable, self).__init__(id, conservar_arbol_xml, crear_contenidos) |
39 |
|
assert(self.version == "1.2.3") |
40 |
|
|
41 |
|
|
42 |
|
def add_descripcion(self,dificultad,texto,personaje_mira): |
43 |
#añade una descripción a la sala y devuelve un puntero al objeto |
#añade una descripción a la sala y devuelve un puntero al objeto |
44 |
#que corresponde a la descripcion nueva |
#que corresponde a la descripcion nueva |
45 |
temp={"dificultad": dificultad, "texto": texto} |
temp={"dificultad": dificultad, "texto": texto, "personaje_mira": personaje_mira} |
46 |
self.descripcion.append(temp) |
self.descripcion.append(temp) |
47 |
temp2=self.descripcion.index(temp) |
temp2=self.descripcion.index(temp) |
48 |
return self.descripcion[temp2] |
return self.descripcion[temp2] |
50 |
def borrar_descripcion(self,des): |
def borrar_descripcion(self,des): |
51 |
self.descripcion.remove(des) |
self.descripcion.remove(des) |
52 |
|
|
53 |
def add_salida(self,direccion,dif,id,desc,tipo_cierre,datos_cierre,mensaje_cerrado): |
def add_salida(self,direccion,dif,id,desc,tipo_cierre,datos_cierre,mensaje_cerrado,personaje_mira,personaje_cruza): |
54 |
#añade una salida a la sala y devuelve un puntero al objeto |
#añade una salida a la sala y devuelve un puntero al objeto |
55 |
#que corresponde a la salida nueva |
#que corresponde a la salida nueva |
56 |
#falta comprobar que no está repetida la Salida |
#falta comprobar que no está repetida la Salida |
61 |
"descripcion": desc, |
"descripcion": desc, |
62 |
"tipo_cierre": tipo_cierre, |
"tipo_cierre": tipo_cierre, |
63 |
"datos_cierre": datos_cierre, |
"datos_cierre": datos_cierre, |
64 |
"mensaje_cerrado": mensaje_cerrado |
"mensaje_cerrado": mensaje_cerrado, |
65 |
|
"personaje_mira": personaje_mira, |
66 |
|
"personaje_cruza": personaje_cruza |
67 |
} |
} |
68 |
self.salidas.append(temp) |
self.salidas.append(temp) |
69 |
temp2=self.salidas.index(temp) |
temp2=self.salidas.index(temp) |
72 |
def borrar_salida(self,sal): |
def borrar_salida(self,sal): |
73 |
self.salidas.remove(sal) |
self.salidas.remove(sal) |
74 |
|
|
75 |
def add_objeto(self,id,probabilidad,maximo,dificultad,cantidad,descripcion): |
def add_objeto(self,id,probabilidad,maximo,dificultad,cantidad,descripcion,personaje_mira): |
76 |
#problemas con las instancias |
#problemas con las instancias |
77 |
temp = {"id": id, |
temp = {"id": id, |
78 |
"probabilidad": probabilidad, |
"probabilidad": probabilidad, |
79 |
"maximo": maximo, |
"maximo": maximo, |
80 |
"dificultad": dificultad, |
"dificultad": dificultad, |
81 |
"cantidad": cantidad, |
"cantidad": cantidad, |
82 |
"descripcion": descripcion} |
"descripcion": descripcion, |
83 |
|
"instancias": [], |
84 |
|
"personaje_mira": personaje_mira} |
85 |
self.objetos.append(temp) |
self.objetos.append(temp) |
86 |
temp2=self.objetos.index(temp) |
temp2=self.objetos.index(temp) |
87 |
return self.objetos[temp2] |
return self.objetos[temp2] |
89 |
def borrar_objeto(self,obj): |
def borrar_objeto(self,obj): |
90 |
self.objetos.remove(obj) |
self.objetos.remove(obj) |
91 |
|
|
92 |
def add_encuentro(self,id,max,prob,dif,des): |
def add_encuentro(self,id,max,prob,dif,des,cantidad): |
93 |
#añade un encuentro a la sala y devuelve un puntero al objeto |
#añade un encuentro a la sala y devuelve un puntero al objeto |
94 |
#que corresponde al encuentro nuevo |
#que corresponde al encuentro nuevo |
95 |
#falta comprobar que no está repetido el encuentro |
#falta comprobar que no está repetido el encuentro |
97 |
"maximo": max, |
"maximo": max, |
98 |
"probabilidad": prob, |
"probabilidad": prob, |
99 |
"dificultad": dif, |
"dificultad": dif, |
100 |
"descripcion": desc} |
"descripcion": desc, |
101 |
|
"cantidad": cantidad} |
102 |
self.__encuentros.append(temp) |
self.__encuentros.append(temp) |
103 |
temp2=self.__encuentros.index(temp) |
temp2=self.__encuentros.index(temp) |
104 |
return self.__encuentros[temp2] |
return self.__encuentros[temp2] |
133 |
salida=salida+"<descripcion>\n" |
salida=salida+"<descripcion>\n" |
134 |
|
|
135 |
for item in self.descripcion: |
for item in self.descripcion: |
136 |
salida=salida+"\t<item dificultad='"+`item["dificultad"]`+"'>" |
salida=salida+" <item" |
137 |
salida=salida+item["texto"]+"</item>\n" |
if item["dificultad"] > 0: |
138 |
|
salida=salida + " dificultad='"+`item["dificultad"]`+"'" |
139 |
|
salida=salida+">"+item["texto"]+"</item>\n" |
140 |
|
|
141 |
salida=salida+"</descripcion>\n" |
salida=salida+"</descripcion>\n" |
142 |
return salida |
return salida |
145 |
salida=salida+"<salidas>\n" |
salida=salida+"<salidas>\n" |
146 |
|
|
147 |
for sal in self.salidas: |
for sal in self.salidas: |
148 |
salida=salida+'\t<' |
salida=salida+' <' |
149 |
salida=salida+sal["direccion"] |
salida=salida+sal["direccion"] |
150 |
salida=salida+' id="'+sal["id"]+'" ' |
salida=salida+' id="'+sal["id"]+'"' |
151 |
salida=salida+'dificultad='+"'"+`sal["dificultad"]`+"' " |
if sal["dificultad"] > 0: |
152 |
#salida=salida+'tipo_cierre='+'"'+sal["tipo_cierre"]+'" ' |
salida=salida+' dificultad='+"'"+`sal["dificultad"]`+"'" |
153 |
#salida=salida+'datos_cierre='+'"'+sal["datos_cierre"]+'" ' |
if sal["tipo_cierre"] != "" and sal["tipo_cierre"] != "ninguno": |
154 |
#salida=salida+'mensaje_cerrado='+'"'+sal["mensaje_cerrado"]+'"' |
salida=salida+' tipo_cierre='+'"'+sal["tipo_cierre"]+'"' |
155 |
|
salida=salida+' datos_cierre='+'"'+sal["datos_cierre"]+'"' |
156 |
|
salida=salida+' mensaje_cerrado='+'"'+sal["mensaje_cerrado"]+'"' |
157 |
salida=salida+">" |
salida=salida+">" |
158 |
salida=salida+sal["descripcion"]+"</"+sal["direccion"]+">\n" |
salida=salida+sal["descripcion"]+"</"+sal["direccion"]+">\n" |
159 |
|
|
161 |
return salida |
return salida |
162 |
|
|
163 |
def guardar_propiedades(self,salida): |
def guardar_propiedades(self,salida): |
164 |
salida=salida+"<propiedades " |
salida=salida+"<propiedades" |
165 |
salida=salida+" tipo='"+ self.tipo+"'" |
if self.tipo != "sin_tipo": |
166 |
salida=salida+" subtipo='"+ self.subtipo+"'" |
salida=salida+" tipo='"+ self.tipo+"'" |
167 |
|
if self.subtipo != "sin_subtipo": |
168 |
|
salida=salida+" subtipo='"+ self.subtipo+"'" |
169 |
salida=salida+" volumen='" + `self.volumen` + "'" |
salida=salida+" volumen='" + `self.volumen` + "'" |
170 |
salida=salida+" luz='"+`self.luz`+ "'" |
salida=salida+" luz='"+`self.luz`+ "'" |
171 |
salida=salida+" aura='"+`self.aura`+ "'" |
salida=salida+" aura='"+`self.aura`+ "'" |
178 |
salida=salida+"<objetos>\n" |
salida=salida+"<objetos>\n" |
179 |
|
|
180 |
for obj in self.objetos: |
for obj in self.objetos: |
181 |
salida = salida+"\t<objeto " |
salida = salida+" <objeto" |
182 |
salida = salida+' id="'+obj["id"]+'"' |
salida = salida+' id="'+obj["id"]+'"' |
183 |
salida = salida+' dificultad="'+`obj["dificultad"]`+'"' |
if obj["dificultad"] != 0: |
184 |
salida = salida+' probabilidad="'+`obj["probabilidad"]`+'"' |
salida = salida+' dificultad="'+`obj["dificultad"]`+'"' |
185 |
salida = salida+' maximo="'+`obj["maximo"]`+'"' |
if obj["probabilidad"] != 0: |
186 |
salida = salida+' cantidad="'+`obj["cantidad"]`+'"' |
salida = salida+' probabilidad="'+`obj["probabilidad"]`+'"' |
187 |
|
if obj["maximo"] != obj["cantidad"]: |
188 |
|
salida = salida+' maximo="'+`obj["maximo"]`+'"' |
189 |
|
if obj["cantidad"] != 1: |
190 |
|
salida = salida+' cantidad="'+`obj["cantidad"]`+'"' |
191 |
salida = salida+">"+obj["descripcion"]+"</objeto>\n" |
salida = salida+">"+obj["descripcion"]+"</objeto>\n" |
192 |
|
|
193 |
salida=salida+"</objetos>\n" |
salida=salida+"</objetos>\n" |
197 |
salida=salida+"<encuentros>\n" |
salida=salida+"<encuentros>\n" |
198 |
|
|
199 |
for enc in self.encuentros: |
for enc in self.encuentros: |
200 |
salida = salida+"\t<encuentro " |
salida = salida+" <encuentro" |
201 |
salida = salida+' id="'+enc["id"]+'"' |
salida = salida+' id="'+enc["id"]+'"' |
202 |
salida = salida+' dificultad="'+`enc["dificultad"]`+'"' |
if enc["dificultad"] != 0: |
203 |
salida = salida+' probabilidad="'+`enc["probabilidad"]`+'"' |
salida = salida+' dificultad="'+`enc["dificultad"]`+'"' |
204 |
salida = salida+' maximo="'+`enc["maximo"]`+'"' |
if enc["probabilidad"] != 0: |
205 |
salida = salida+' cantidad="'+`enc["cantidad"]`+'"' |
salida = salida+' probabilidad="'+`enc["probabilidad"]`+'"' |
206 |
|
if enc["maximo"] != enc["cantidad"]: |
207 |
|
salida = salida+' maximo="'+`enc["maximo"]`+'"' |
208 |
|
if enc["cantidad"] != 1: |
209 |
|
salida = salida+' cantidad="'+`enc["cantidad"]`+'"' |
210 |
salida = salida+">"+enc["descripcion"]+"</encuentro>\n" |
salida = salida+">"+enc["descripcion"]+"</encuentro>\n" |
211 |
|
|
212 |
salida=salida+"</encuentros>\n" |
salida=salida+"</encuentros>\n" |
242 |
def __inicializar_sala(self,conservar_arbol_xml): |
def __inicializar_sala(self,conservar_arbol_xml): |
243 |
pass |
pass |
244 |
|
|
|
|
|
245 |
|
|