我正在尝试在 ursina 中创建一个 2D 游戏,我有一个类FirstLevel
,我在其中创建玩家 2D 实体、敌人、立方体等,我还使用这个类的update
方法进行玩家动作等。在我的 main.py 中,首先我创建一个菜单,如带有开始和退出按钮等的界面,然后如果单击开始按钮,我将运行第一级。
我的问题是:我可以创建第二类,比如说SecondLevel
(从第一个继承一些信息,比如玩家速度、敌人等)并摧毁这个FirstLevel
类(在第一级老板被摧毁之后)吗?如果没有,有人知道我如何在不同的类实体(在我的情况下是级别)之间切换吗?
源代码在这里:https ://github.com/VulpeanuAdrian/LordMuffinGame
def start_level():
global m
destroy(play)
destroy(help)
destroy(help_text)
destroy(exit_button)
destroy(cat_screen)
m = True
m = FirstLevel()
def help_text_func():
play.visible = True
exit_button.visible = True
destroy(help_text_bt)
def help_menu():
global help_text_bt
help_text_bt = Button(
text=help_text_string,
on_click=help_text_func,
scale=(1, 0.6),
x=-0.4,
y=0.35,
color=color.orange,
text_color=color.violet
)
if __name__ == '__main__':
app = Ursina()
window.fullscreen = True
cat_screen = Animation('cat_gif', fps=30, loop=True, autoplay=True, scale=(13, 13))
cat_screen.start()
play = Button(' Play ', on_click=start_level, scale=(0.095, 0.095), x=0, y=0, color=color.blue)
help = Button('Help', on_click=help_menu, scale=(0.095, 0.095), x=0, y=-0.1)
help_text = Text(text=help_text_string, x=-0.3, y=0.3, visible=False, color=color.random_color())
exit_button = Button(' Quit ', on_click=application.quit, x=0, y=-0.2, scale=(0.095, 0.095), color=color.red)