Spaces:
Runtime error
Runtime error
Update app.py
Browse files
app.py
CHANGED
@@ -27,73 +27,3 @@ st.markdown("""
|
|
27 |
|
28 |
|
29 |
""")
|
30 |
-
|
31 |
-
import pandas as pd
|
32 |
-
import tkinter as tk
|
33 |
-
import random
|
34 |
-
|
35 |
-
# Create the pandas dataframe
|
36 |
-
df = pd.DataFrame({
|
37 |
-
'emoji': ['๐ฒ', '๐ฏ', '๐ด', '๐ฐ', '๐ณ', '๐ฎ', '๐ด', '๐'],
|
38 |
-
'dice_meaning': ['6-sided die', '6-sided die', '6-sided die', '6-sided die', '10-sided die', '20-sided die', '6-sided die', '6-sided die']
|
39 |
-
})
|
40 |
-
|
41 |
-
import os
|
42 |
-
os.environ['DISPLAY'] = ':0'
|
43 |
-
|
44 |
-
# Create the drop-down list box
|
45 |
-
root = tk.Tk()
|
46 |
-
root.title('Actor Role Playing Game')
|
47 |
-
selected_emoji = tk.StringVar()
|
48 |
-
dropdown = tk.OptionMenu(root, selected_emoji, *df['emoji'].values)
|
49 |
-
dropdown.pack()
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
# set up the game board
|
55 |
-
player_pos = {'Player 1': [0, 0], 'Player 2': [0, 0]}
|
56 |
-
board = pd.DataFrame(index=range(5), columns=range(5))
|
57 |
-
board.iloc[player_pos['Player 1'][0], player_pos['Player 1'][1]] = '๐ด'
|
58 |
-
board.iloc[player_pos['Player 2'][0], player_pos['Player 2'][1]] = '๐ด'
|
59 |
-
|
60 |
-
# implement the dice game
|
61 |
-
rolls = []
|
62 |
-
coins = {'Player 1': 0, 'Player 2': 0}
|
63 |
-
def roll_dice(player):
|
64 |
-
roll = random.randint(1, 6)
|
65 |
-
rolls.append(roll)
|
66 |
-
if roll in rolls[:-1]:
|
67 |
-
coins[player] += 10
|
68 |
-
|
69 |
-
# save results to file
|
70 |
-
results = pd.DataFrame(columns=['Player', 'Roll'])
|
71 |
-
def save_results(player, roll):
|
72 |
-
results.loc[len(results)] = [player, roll]
|
73 |
-
results.to_csv('results.txt', index=False)
|
74 |
-
|
75 |
-
# implement download link
|
76 |
-
def get_table_download_link(df, text):
|
77 |
-
csv = df.to_csv(index=False)
|
78 |
-
b64 = base64.b64encode(csv.encode()).decode()
|
79 |
-
href = f'<a href="data:file/csv;base64,{b64}" download="{text}.csv">Download Results</a>'
|
80 |
-
return href
|
81 |
-
|
82 |
-
# create multiplayer aspect
|
83 |
-
players = ['Player 1', 'Player 2']
|
84 |
-
player = st.selectbox('Select Player', players)
|
85 |
-
player_pos[player][1] = st.slider('Move Right or Left', -2, 2, 0)
|
86 |
-
player_pos[player][0] = st.slider('Move Up or Down', -2, 2, 0)
|
87 |
-
board.iloc[player_pos['Player 1'][0], player_pos['Player 1'][1]] = '๐ฎ'
|
88 |
-
board.iloc[player_pos['Player 2'][0], player_pos['Player 2'][1]] = '๐ฒ'
|
89 |
-
|
90 |
-
if st.button('Roll Dice'):
|
91 |
-
roll_dice(player)
|
92 |
-
st.write('Roll:', rolls[-1])
|
93 |
-
st.write('Coins:', coins[player])
|
94 |
-
save_results(player, rolls[-1])
|
95 |
-
|
96 |
-
st.write(board)
|
97 |
-
|
98 |
-
if st.button('Download Results'):
|
99 |
-
st.markdown(get_table_download_link(results, 'results'), unsafe_allow_html=True)
|
|
|
27 |
|
28 |
|
29 |
""")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|