WebashalarForML commited on
Commit
6836551
·
verified ·
1 Parent(s): 15904c0

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -8
app.py CHANGED
@@ -3924,6 +3924,7 @@ def create_sb3_archive(project_folder, project_id):
3924
  Returns:
3925
  str: The path to the created .sb3 file, or None if an error occurred.
3926
  """
 
3927
  output_filename = os.path.join("generated_projects", project_id)
3928
  zip_path = None
3929
  sb3_path = None
@@ -3960,7 +3961,8 @@ def create_sb3_archive(project_folder, project_id):
3960
  # --- New endpoint to fetch project.json ---
3961
  @app.route("/get_project/<project_id>", methods=["GET"])
3962
  def get_project(project_id):
3963
- project_folder = os.path.join("generated_projects", project_id)
 
3964
  project_json_path = os.path.join(project_folder, "project.json")
3965
 
3966
  try:
@@ -3977,7 +3979,8 @@ def get_project(project_id):
3977
  # --- New endpoint to fetch assets ---
3978
  @app.route("/get_asset/<project_id>/<filename>", methods=["GET"])
3979
  def get_asset(project_id, filename):
3980
- project_folder = os.path.join("generated_projects", project_id)
 
3981
  asset_path = os.path.join(project_folder, filename)
3982
 
3983
  try:
@@ -4007,7 +4010,8 @@ def download_sb3(project_id):
4007
  Allows users to download the generated .sb3 Scratch project file.
4008
  """
4009
  sb3_filename = f"{project_id}.sb3"
4010
- sb3_filepath = os.path.join("generated_projects", sb3_filename)
 
4011
 
4012
  try:
4013
  if os.path.exists(sb3_filepath):
@@ -4112,12 +4116,16 @@ def generate_game():
4112
  logger.info("Initial project skeleton created with sounds for stage and sprites.")
4113
 
4114
  project_id = str(uuid.uuid4())
4115
- project_folder = os.path.join("generated_projects", project_id)
 
 
 
4116
 
4117
  try:
4118
  os.makedirs(project_folder, exist_ok=True)
4119
  # Save initial skeleton and copy assets
4120
  project_json_path = os.path.join(project_folder, "project.json")
 
4121
  with open(project_json_path, "w") as f:
4122
  json.dump(project_skeleton, f, indent=2)
4123
  logger.info(f"Initial project skeleton saved to {project_json_path}")
@@ -4204,9 +4212,11 @@ def generate_game():
4204
  if __name__=="__main__":
4205
  logger.info("Starting Flask application...")
4206
  # Create the 'generated_projects' and 'static/assets' directories if they don't exist
4207
- os.makedirs("generated_projects", exist_ok=True)
4208
- os.makedirs("static/assets/backdrops", exist_ok=True)
4209
- os.makedirs("static/assets/sprites", exist_ok=True)
4210
- os.makedirs("static/assets/sounds", exist_ok=True)
 
 
4211
  app.run(debug=True,port=5000)
4212
 
 
3924
  Returns:
3925
  str: The path to the created .sb3 file, or None if an error occurred.
3926
  """
3927
+ #output_filename = os.path.join("generated_projects", project_id)
3928
  output_filename = os.path.join("generated_projects", project_id)
3929
  zip_path = None
3930
  sb3_path = None
 
3961
  # --- New endpoint to fetch project.json ---
3962
  @app.route("/get_project/<project_id>", methods=["GET"])
3963
  def get_project(project_id):
3964
+ #project_folder = os.path.join("generated_projects", project_id)
3965
+ project_folder = send_from_directory(directory="generated_projects", project_id)
3966
  project_json_path = os.path.join(project_folder, "project.json")
3967
 
3968
  try:
 
3979
  # --- New endpoint to fetch assets ---
3980
  @app.route("/get_asset/<project_id>/<filename>", methods=["GET"])
3981
  def get_asset(project_id, filename):
3982
+ #project_folder = os.path.join("generated_projects", project_id)
3983
+ project_folder = send_from_directory(directory="generated_projects", project_id)
3984
  asset_path = os.path.join(project_folder, filename)
3985
 
3986
  try:
 
4010
  Allows users to download the generated .sb3 Scratch project file.
4011
  """
4012
  sb3_filename = f"{project_id}.sb3"
4013
+ #sb3_filepath = os.path.join("generated_projects", sb3_filename)
4014
+ sb3_filepath = send_from_directory(directory="generated_projects", sb3_filename)
4015
 
4016
  try:
4017
  if os.path.exists(sb3_filepath):
 
4116
  logger.info("Initial project skeleton created with sounds for stage and sprites.")
4117
 
4118
  project_id = str(uuid.uuid4())
4119
+ #project_folder = os.path.join("generated_projects", project_id)
4120
+ #project_folder = send_from_directory(directory="generated_projects", project_id)
4121
+ project_folder = GEN_PROJECT_DIR / project_id
4122
+ project_folder.mkdir(parents=True, exist_ok=True)
4123
 
4124
  try:
4125
  os.makedirs(project_folder, exist_ok=True)
4126
  # Save initial skeleton and copy assets
4127
  project_json_path = os.path.join(project_folder, "project.json")
4128
+
4129
  with open(project_json_path, "w") as f:
4130
  json.dump(project_skeleton, f, indent=2)
4131
  logger.info(f"Initial project skeleton saved to {project_json_path}")
 
4212
  if __name__=="__main__":
4213
  logger.info("Starting Flask application...")
4214
  # Create the 'generated_projects' and 'static/assets' directories if they don't exist
4215
+ #os.makedirs("generated_projects", exist_ok=True)
4216
+ #os.makedirs("static/assets/backdrops", exist_ok=True)
4217
+ #os.makedirs("static/assets/sprites", exist_ok=True)
4218
+ #os.makedirs("static/assets/sounds", exist_ok=True)
4219
+ for d in (GEN_PROJECT_DIR, BACKDROP_DIR, SPRITE_DIR, SOUND_DIR):
4220
+ d.mkdir(parents=True, exist_ok=True)
4221
  app.run(debug=True,port=5000)
4222