cha0smagick commited on
Commit
5e4549f
1 Parent(s): 679c603

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +67 -15
app.py CHANGED
@@ -1,5 +1,6 @@
1
  import random
2
  import streamlit as st
 
3
 
4
  # Definición de las características del personaje
5
  class Personaje:
@@ -10,7 +11,13 @@ class Personaje:
10
  self.ventajas = self.generar_ventajas()
11
  self.tradicion = self.elegir_tradicion()
12
  self.background = self.generar_background()
13
-
 
 
 
 
 
 
14
  def generar_nombre(self):
15
  nombres = ["Artemis", "Eliora", "Julian", "Maeve", "Lysander", "Cassandra", "Dorian", "Thalia"]
16
  apellidos = ["Ravenwood", "Blackthorne", "Shadowend", "Stormwatch", "Frostbite", "Starfire"]
@@ -82,7 +89,7 @@ class Personaje:
82
  aspiraciones = [
83
  "convertirse en un maestro de la magia",
84
  "proteger a sus seres queridos a toda costa",
85
- "desentrañar los misterios de su propia existencia",
86
  "afrontar sus miedos y superar sus debilidades",
87
  "descubrir un antiguo poder que cambiará el mundo"
88
  ]
@@ -93,6 +100,32 @@ class Personaje:
93
  f"su trauma más profundo es que {random.choice(traumas)}, "
94
  f"y su mayor aspiración es {random.choice(aspiraciones)}.")
95
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
96
  # Generador de personaje
97
  def generar_personaje():
98
  personaje = Personaje()
@@ -105,23 +138,42 @@ def main():
105
 
106
  if st.button("Generar Personaje"):
107
  personaje = generar_personaje()
108
- st.subheader("Hoja de Personaje")
109
 
110
- st.write(f"**Nombre:** {personaje.nombre}")
111
- st.write("### Atributos:")
112
- for atributo, valor in personaje.atributos.items():
113
- st.write(f"- **{atributo}:** {valor}")
 
 
 
 
 
 
 
 
 
 
114
 
 
 
 
 
 
 
 
 
 
115
  st.write("### Habilidades:")
116
- for habilidad, valor in personaje.habilidades.items():
117
- st.write(f"- **{habilidad}:** {valor}")
118
-
 
119
  st.write("### Ventajas:")
120
- for ventaja in personaje.ventajas:
121
- st.write(f"- **{ventaja}**")
122
-
123
- st.write(f"**Tradición:** {personaje.tradicion}")
124
- st.write(f"**Trasfondo:** {personaje.background}")
125
 
126
  if __name__ == "__main__":
127
  main()
 
1
  import random
2
  import streamlit as st
3
+ import pandas as pd
4
 
5
  # Definición de las características del personaje
6
  class Personaje:
 
11
  self.ventajas = self.generar_ventajas()
12
  self.tradicion = self.elegir_tradicion()
13
  self.background = self.generar_background()
14
+ self.descripcion = self.generar_descripcion()
15
+ self.vida = random.randint(5, 10) # Vida inicial
16
+ self.puntos_de_fuerza = random.randint(0, 5)
17
+ self.puntos_de_energia = random.randint(0, 5)
18
+ self.maldiciones = self.generar_maldiciones()
19
+ self.clase_social = self.generar_clase_social()
20
+
21
  def generar_nombre(self):
22
  nombres = ["Artemis", "Eliora", "Julian", "Maeve", "Lysander", "Cassandra", "Dorian", "Thalia"]
23
  apellidos = ["Ravenwood", "Blackthorne", "Shadowend", "Stormwatch", "Frostbite", "Starfire"]
 
89
  aspiraciones = [
90
  "convertirse en un maestro de la magia",
91
  "proteger a sus seres queridos a toda costa",
92
+ "desenredar los misterios de su propia existencia",
93
  "afrontar sus miedos y superar sus debilidades",
94
  "descubrir un antiguo poder que cambiará el mundo"
95
  ]
 
100
  f"su trauma más profundo es que {random.choice(traumas)}, "
101
  f"y su mayor aspiración es {random.choice(aspiraciones)}.")
102
 
103
+ def generar_descripcion(self):
104
+ descripciones = [
105
+ "Un buscador de la verdad, siempre con una pregunta en la mente.",
106
+ "Un guerrero de las sombras, protegiendo el mundo de fuerzas oscuras.",
107
+ "Un erudito que atesora conocimientos prohibidos y secretos antiguos.",
108
+ "Un líder carismático, capaz de unir a las personas bajo una causa común.",
109
+ "Un viajero del tiempo, buscando respuestas en el pasado y futuro."
110
+ ]
111
+ return random.choice(descripciones)
112
+
113
+ def generar_maldiciones(self):
114
+ maldiciones = [
115
+ "Desconfianza permanente hacia los demás.",
116
+ "Visiones aterradoras que interrumpen su paz.",
117
+ "Una incapacidad para dejar el pasado atrás.",
118
+ "Una conexión inquebrantable con el mundo espiritual.",
119
+ "Un ciclo de mala suerte que parece perseguirle."
120
+ ]
121
+ return random.choice(maldiciones)
122
+
123
+ def generar_clase_social(self):
124
+ clases = [
125
+ "Nobleza", "Clase Media", "Clase Baja", "Intelligentsia", "Marginado"
126
+ ]
127
+ return random.choice(clases)
128
+
129
  # Generador de personaje
130
  def generar_personaje():
131
  personaje = Personaje()
 
138
 
139
  if st.button("Generar Personaje"):
140
  personaje = generar_personaje()
 
141
 
142
+ # Crear un DataFrame para mostrar los atributos en formato de cuadrícula
143
+ data = {
144
+ "Características": [
145
+ "Nombre", "Tradición", "Clase Social", "Vida", "Descripción", "Puntos de Fuerza",
146
+ "Puntos de Energía", "Maldición"
147
+ ],
148
+ "Detalles": [
149
+ personaje.nombre, personaje.tradicion, personaje.clase_social, personaje.vida,
150
+ personaje.descripcion, personaje.puntos_de_fuerza, personaje.puntos_de_energia,
151
+ personaje.maldiciones
152
+ ]
153
+ }
154
+
155
+ df = pd.DataFrame(data)
156
 
157
+ st.subheader("Hoja de Personaje")
158
+ st.write(df)
159
+
160
+ # Mostrar Atributos
161
+ st.write("### Atributos:")
162
+ atributos_df = pd.DataFrame(personaje.atributos.items(), columns=["Atributo", "Valor"])
163
+ st.write(atributos_df)
164
+
165
+ # Mostrar Habilidades
166
  st.write("### Habilidades:")
167
+ habilidades_df = pd.DataFrame(personaje.habilidades.items(), columns=["Habilidad", "Valor"])
168
+ st.write(habilidades_df)
169
+
170
+ # Mostrar Ventajas
171
  st.write("### Ventajas:")
172
+ st.write(", ".join(personaje.ventajas))
173
+
174
+ # Mostrar Background
175
+ st.write("### Trasfondo:")
176
+ st.write(personaje.background)
177
 
178
  if __name__ == "__main__":
179
  main()