本帖最后由 bobing7 于 2015-2-7 16:57 编辑
Catharsis 发表于 2014-10-12 00:08
请问一下楼主,如果想要让背景图片完全显示之后就停止滚动应该怎样改动呢? ...
抱歉推了舊帖
這幾天我都在研究你的問題,
以一幅1366*768的圖片為例,假設我的遊戲解像度是960*640
這裡說的是置換原文的360-369行,我可以寫成:
#滾動 if @bg_sprite.ox < 406 #1366-960=406,滾動到最右邊就停下來 #如果寫成 if @timer < 30,就是30單位的時間後停下來 @bg_sprite.ox+=SHIFT_SPEED[1] if @timer%SHIFT_SPEED[0]==0 end #原帖內容不變 @sparks.push(Sprite_lbqSpark.new(@spark_vp)) if @timer%TIME_SPARK==0 @sparks.each{|spk|spk.update } @sparks.each do |s| end
#滾動
if @bg_sprite.ox < 406 #1366-960=406,滾動到最右邊就停下來
#如果寫成 if @timer < 30,就是30單位的時間後停下來
@bg_sprite.ox+=SHIFT_SPEED[1] if @timer%SHIFT_SPEED[0]==0
end #原帖內容不變
@sparks.push(Sprite_lbqSpark.new(@spark_vp)) if @timer%TIME_SPARK==0
@sparks.each{|spk|spk.update }
@sparks.each do |s|
end
剛剛有試過把以下那句改成return,可是藥效太強,連螢火蟲都停了
@bg_sprite.ox+=SHIFT_SPEED[1] if @timer%SHIFT_SPEED[0]==0 end #原帖內容不變
@bg_sprite.ox+=SHIFT_SPEED[1] if @timer%SHIFT_SPEED[0]==0
end #原帖內容不變
本人是個新手
以上供大家參考,如果有更好寫法請指點一下,謝謝。 |