Skip to content

Commit c17b0ac

Browse files
authored
Update gamebro-gui.py
1 parent aa34aea commit c17b0ac

File tree

1 file changed

+24
-10
lines changed

1 file changed

+24
-10
lines changed

gamebro-gui.py

Lines changed: 24 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -193,6 +193,7 @@ def cleanquotes(text: str) -> str:
193193
def write_project_file():
194194
if not project_name.strip():
195195
return
196+
196197
filename = filter(remove_non_ascii(f"{project_name}.py"))
197198
with open(filename, "w") as f:
198199
f.write("# -*- coding: utf-8 -*-\n")
@@ -203,19 +204,28 @@ def write_project_file():
203204
f.write("from ursina.prefabs.first_person_controller import FirstPersonController\n\n")
204205
f.write(f"# Project: {filter(project_name)}\n")
205206
f.write("# Created by GameBro Studio\n\n")
206-
f.write(f"app: Ursina = Ursina(title=\"{filter(remove_non_ascii(f"{project_name}"))}\")\n")
207-
f.write(f"window.title = \"{filter(remove_non_ascii(f"{project_name}"))}\"\n")
207+
f.write(f"app: Ursina = Ursina(title=\"{filter(remove_non_ascii(project_name))}\")\n")
208+
f.write(f"window.title = \"{filter(remove_non_ascii(project_name))}\"\n")
208209
f.write("if os.path.exists(os.path.join(\"assets\", \"icon.ico\")):\n")
209210
f.write(" window.icon = os.path.join(\"assets\", \"icon.ico\")\n")
210211
f.write("window.exit_button.visible = False\n")
211-
f.write("window.borderless = True\n")
212-
f.write("player: FirstPersonController = FirstPersonController(y=1)\n")
212+
f.write("window.borderless = True\n\n")
213+
214+
# Player above platform
215+
f.write("player = FirstPersonController(position=(0, 5, 0))\n")
213216
f.write("player.gravity = 1\n\n")
217+
218+
# Ground platform
219+
f.write("platform: Entity = Entity(model='cube', color=color.green, scale=(10, 1, 10), position=(0, 0, 0), collider='box')\n\n")
220+
221+
# Write sprites
214222
for sprite in sprites:
215223
spritetowrite: str = filter(sprite['name'])
216224
if is_int(spritetowrite) or spritetowrite in ["Sprite", "SpriteGroup", *banned_kwords]:
217225
spritetowrite = f"Sprite_{spritetowrite}"
218226
f.write(f"{spritetowrite}: Sprite = Sprite(customdata={sprite['data']}, name=\"{cleanquotes(sprite['name'].replace(' ', '_').replace(';', ''))}\")\n")
227+
228+
# Write sprite groups
219229
for group in groups:
220230
group_name = filter(group['name'])
221231
if is_int(group_name) or group_name in ["Sprite", "SpriteGroup", *banned_kwords] or group_name in [sprite['name'] for sprite in sprites]:
@@ -227,13 +237,17 @@ def write_project_file():
227237
for s in group['sprites']
228238
)
229239
f.write(f"{group_name}: SpriteGroup = SpriteGroup({members})\n")
230-
f.write("def input(key: str) -> None:\n")
240+
241+
# Handle input (properly)
242+
f.write("\ndef input(key: str) -> None:\n")
231243
f.write(" if key == \"escape\":\n")
232-
f.write(" sys.exit()\n\n")
233-
f.write("def update() -> None:\n")
234-
f.write(" mouse.position = Vec2(0, 0)\n\n")
235-
f.write("app.run()")
236-
f.close()
244+
f.write(" sys.exit()\n")
245+
246+
# Update function (no mouse.position reset)
247+
f.write("\ndef update() -> None:\n")
248+
f.write(" pass\n\n")
249+
250+
f.write("app.run()\n")
237251

238252
def insert_newlines(text, max_chars):
239253
return '\n'.join(text[i:i+max_chars] for i in range(0, len(text), max_chars))

0 commit comments

Comments
 (0)