用户:
datacat查看:0 回复:3 评论:0 创建时间:2020-05-10T20:17:20
先上代码、
秀代码阶段
import random
stage.set_background("sky")#设置背景
#初始化数据和精灵
monsters = []
time=0
live=1
score=0
monster = codeaha.Sprite("monster5", 200, 200)
monster.set_size(0.5)
monster.set_speed(1)
monsters.append(monster)
#在这里创建啊哈沃德
ahaworld=codeaha.Ahaworld()
ahaworld.set_size(0.8)
ahaworld.set_speed(9)
scoretext=codeaha.Text("得分:"+str(score),-180,200,"yellow")
#碰撞事件
def collision(a, b):
global monster
global ahaworld
global live
if b.get_image_name() == "monster5":
text=codeaha.Text("Game Over",0,-40,"yellow")#结束(失败)条件
a.hide()
live-=1
for i in monsters:
stage.remove_sprite(i)
ahaworld.event_collision(collision)
#用方向键控制啊哈沃德行走
def up_key():
ahaworld.move_up(20)
stage.event_key("up", up_key)#向上
def right_key():
if ahaworld.xcor()<250:
ahaworld.move_right(20)
stage.event_key("right", right_key)#→(狗头,希望你能看得懂)
def left_key():
if ahaworld.ycor()<250:
ahaworld.move_left(20)
stage.event_key("left", left_key)#←(狗头,希望你能看得懂)
def down_key():
if ahaworld.ycor()>-250:
ahaworld.move_down(20)
stage.event_key("down", down_key)#下
#间歇事件
def interval():
global time
global score
global scoretext
time+=1
score+=1
if live>0:
scoretext.set_text("得分:"+str(score))#如何得分,用时间来设置
if time%10==0:
monster = codeaha.Sprite("monster5", 200, 200)
monster.set_size(0.5)
monster.set_speed(1)
monsters.append(monster)
for i in monsters:
x = random.randint(-200,200)
y = random.randint(-200,200)
i.glide_to(x, y)
stage.event_interval(interval, 1)
下一阶段
教程
#科普时间到
#下面这行代码是开火代码
#ahaworld.fire()
#下面这恒是攻击代码
#↓
#ahaworld.hit()
#下面是询问代码↓
#a=ahaworld.get()
#好了,留下今天的问题,下面这行代码是什么意思↓
#↓↓↓
#boolean_var = (3 <= 4)
#print(boolean_var)
#怎么样想出来了吗
#这行呢↓
#stage.enable_left_wall()
#怎么样很简单吧,不是小白都能想出来吧
#我来揭秘一下boolean_var = (3 <= 4)
#print(boolean_var)这行是布尔值的判断
#stage.enable_left_wall()是生成左墙壁
#今天就到这里吧
#下期见
怎么样,你学会了吗
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()