找回密码
 立即注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 4849|回复: 9

[已解决] 【新手求助】关于flappy bird 小鸟扇动翅膀动画的问题

1

主题

5

帖子

5

积分

贫民

积分
5
meng5210304 发表于 2016-7-24 16:39:30 | 显示全部楼层 |阅读模式

1

1

2

2

圈出来的这一段代码实现之后的效果是点一次鼠标,小鸟翅膀往上扇,再点一次往下扇,怎么修改代码,让它变成点一次鼠标,完整的煽动一次翅膀呢??

新人小白什么都不懂,求大神指导

回复

使用道具 举报

5

主题

101

帖子

101

积分

版主

Rank: 7Rank: 7Rank: 7

积分
101

最佳新人活跃会员热心会员突出贡献

QQ
落叶秋风 发表于 2016-7-24 18:53:37 | 显示全部楼层

C:\Users\Administrator\Desktop\图片.png
红框框框中的部分,复制一遍放到箭头所指的地方,如果不行,就把self.spriteBird.velocity = (0, upSpeed)这句也复制过去试试
图片.png
回复 支持 1 反对 0

使用道具 举报

5

主题

101

帖子

101

积分

版主

Rank: 7Rank: 7Rank: 7

积分
101

最佳新人活跃会员热心会员突出贡献

QQ
落叶秋风 发表于 2016-7-24 18:12:43 | 显示全部楼层
我们先剖析下你所说的点一次鼠标,小鸟翅膀往上扇,再点一次往下扇,上面的if代码是实际处理小鸟翅膀上或者下扇的部分,而下面的是上下扇翅膀切换的部分,如果单纯的想实现一次点击实现上下扇的功能,你可把红框中的上面部分的if-else处理语句复制一遍放在下面的if-else切换函数后面就可以了。
回复 支持 反对

使用道具 举报

1

主题

5

帖子

5

积分

贫民

积分
5
meng5210304  楼主| 发表于 2016-7-24 18:46:41 | 显示全部楼层
落叶秋风 发表于 2016-7-24 18:12
我们先剖析下你所说的点一次鼠标,小鸟翅膀往上扇,再点一次往下扇,上面的if代码是实际处理小鸟翅膀上或者 ...

具体放在哪里呢。。试了一下还是没有反应啊
回复 支持 反对

使用道具 举报

5

主题

101

帖子

101

积分

版主

Rank: 7Rank: 7Rank: 7

积分
101

最佳新人活跃会员热心会员突出贡献

QQ
落叶秋风 发表于 2016-7-24 18:48:44 | 显示全部楼层
meng5210304 发表于 2016-7-24 18:46
具体放在哪里呢。。试了一下还是没有反应啊

你把代码发上来啊,我给你做个截图
回复 支持 反对

使用道具 举报

1

主题

5

帖子

5

积分

贫民

积分
5
meng5210304  楼主| 发表于 2016-7-24 18:50:14 | 显示全部楼层
本帖最后由 meng5210304 于 2016-7-24 18:51 编辑




回复

使用道具 举报

1

主题

5

帖子

5

积分

贫民

积分
5
meng5210304  楼主| 发表于 2016-7-24 18:50:45 | 显示全部楼层
落叶秋风 发表于 2016-7-24 18:48
你把代码发上来啊,我给你做个截图

       #点击屏幕时,如果小鸟没有到达游戏顶部,给它一个上升速度
        if self.spriteBird.position[1] < common.visibleSize["height"] - 20:
            if self.level == 1:
                upSpeed = 200
            if self.level == 2:
                upSpeed = 275
            if self.level == 3:
                upSpeed = 350
            if self.level == 0:
                upSpeed = 250

            if (self.birdImageIndex % 2) == 0:
                for i in range(3):
                    self.spriteBird.add(createAtlasSprite("bird"+self.spriteBird.birdNum+"_"+str(i)))
            else:
                for i in reversed(range(3)):
                    self.spriteBird.add(createAtlasSprite("bird"+self.spriteBird.birdNum+"_"+str(i)))

            self.spriteBird.velocity = (0, upSpeed)

            if self.birdImageIndex == 0:
                self.birdImageIndex = 1
            else:
                self.birdImageIndex = 0
回复 支持 反对

使用道具 举报

1

主题

5

帖子

5

积分

贫民

积分
5
meng5210304  楼主| 发表于 2016-7-24 18:55:45 | 显示全部楼层
落叶秋风 发表于 2016-7-24 18:53
红框框框中的部分,复制一遍放到箭头所指的地方,如果不行,就把self.spriteBird.velocity = (0, upSpeed ...

图片好像没有传上来哦
回复 支持 反对

使用道具 举报

5

主题

101

帖子

101

积分

版主

Rank: 7Rank: 7Rank: 7

积分
101

最佳新人活跃会员热心会员突出贡献

QQ
落叶秋风 发表于 2016-7-24 18:57:32 | 显示全部楼层
meng5210304 发表于 2016-7-24 18:55
图片好像没有传上来哦

叫我扣扣1055072354,那边回复快,论坛我图传上了你居然看不见……
回复 支持 反对

使用道具 举报

50

主题

1057

帖子

1108

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1108

活跃会员热心会员最佳导师默默耕耘突出贡献优秀版主荣誉管理论坛元老

blueelwang 发表于 2016-7-24 23:31:07 | 显示全部楼层
图片可以看到啊! 落叶秋风 老大真实高手
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表