Rathapoom commited on
Commit
95bfa53
Β·
verified Β·
1 Parent(s): 7dd1646

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -3
app.py CHANGED
@@ -29,6 +29,8 @@ def init_session_state():
29
  st.session_state.total_words = 0
30
  if 'badges' not in st.session_state:
31
  st.session_state.badges = []
 
 
32
 
33
  init_session_state()
34
 
@@ -120,6 +122,19 @@ def update_achievements(text: str):
120
  st.session_state.badges.append(badge)
121
  st.success(f"πŸ† Achievement Unlocked: {badge}!")
122
 
 
 
 
 
 
 
 
 
 
 
 
 
 
123
  # Main UI Layout
124
  st.title("πŸ“– JoyStory - Interactive Story Adventure")
125
 
@@ -133,8 +148,8 @@ with st.sidebar:
133
  st.session_state.level = level
134
 
135
  if st.button("Start New Story"):
136
- st.session_state.story = []
137
- st.experimental_rerun()
138
 
139
  # Main content area
140
  col1, col2 = st.columns([3, 1])
@@ -171,7 +186,8 @@ with col1:
171
  ai_response = generate_story_continuation(user_input, st.session_state.level)
172
  st.session_state.story.append({"role": "AI", "content": ai_response})
173
 
174
- st.experimental_rerun()
 
175
  else:
176
  st.warning("Please write something to continue the story.")
177
 
 
29
  st.session_state.total_words = 0
30
  if 'badges' not in st.session_state:
31
  st.session_state.badges = []
32
+ if 'should_reset' not in st.session_state:
33
+ st.session_state.should_reset = False
34
 
35
  init_session_state()
36
 
 
122
  st.session_state.badges.append(badge)
123
  st.success(f"πŸ† Achievement Unlocked: {badge}!")
124
 
125
+ def reset_story():
126
+ """Reset the story and related state variables."""
127
+ st.session_state.story = []
128
+ st.session_state.achievements = []
129
+ st.session_state.unique_words = set()
130
+ st.session_state.total_words = 0
131
+ st.session_state.badges = []
132
+ st.session_state.should_reset = False
133
+
134
+ # Handle story reset if needed
135
+ if st.session_state.should_reset:
136
+ reset_story()
137
+
138
  # Main UI Layout
139
  st.title("πŸ“– JoyStory - Interactive Story Adventure")
140
 
 
148
  st.session_state.level = level
149
 
150
  if st.button("Start New Story"):
151
+ st.session_state.should_reset = True
152
+ st.rerun()
153
 
154
  # Main content area
155
  col1, col2 = st.columns([3, 1])
 
186
  ai_response = generate_story_continuation(user_input, st.session_state.level)
187
  st.session_state.story.append({"role": "AI", "content": ai_response})
188
 
189
+ # Clear the input and rerun
190
+ st.rerun()
191
  else:
192
  st.warning("Please write something to continue the story.")
193