2016-09-04 12 views
0

GosuとRubyでゲームを作成しようとしています。背景画像が自分のコードに表示されないという問題が発生しています。私は間違いはないが、アプリケーションを起動するたびに黒い画面が表示され、どうして誰かが助けてくれますか?Gosuに背景画像が表示されない

require 'gosu' 
require_relative 'player' 
require_relative 'enemy' 
require_relative 'bullet' 
require_relative 'eb_bullet' 
require_relative 'explosion' 

class SectorFive < Gosu::Window 
WIDTH = 800 
HEIGHT = 600 
ENEMY_FREQUENCY = 0.03 
ENEMY_BULLET_FREQUENCY = 0.009 
def initialize 
    super(WIDTH, HEIGHT) 
    self.caption = "Sector Five" 
    @background_image = Gosu::Image.new('images/start_screen.png') 
end 


def draw 
@background_image.draw(0,0,0) 
end 
end 
window = SectorFive.new 
window.show 
+0

こんにちは、png自体に何か問題がありますか?また、Windowsでこれを実行していますか?私はちょうどインターネットからランダムPNGで私のマックでこれを実行しました - うまく働いたが、私はあなたの様々な必要性を持っていない、おそらくそれを引き起こして何かができますか? –

+0

私はこれをsomeones githubから取り出したと思っていました。はい、これを窓で実行しています – user2214162

答えて

0

あなたのインデントが厄介であり、あなたは、例えば、あなたのSectorFiveクラスでupdate方法を必要とします

require 'gosu' 
#require_relative 'player' 
#require_relative 'enemy' 
#require_relative 'bullet' 
#require_relative 'eb_bullet' 
#require_relative 'explosion' 

class SectorFive < Gosu::Window 
# ENEMY_FREQUENCY = 0.03 
# ENEMY_BULLET_FREQUENCY = 0.009 

    def initialize(width=800, height=600) 
    @width  = width 
    @height = height 
    super width, height, false # <-- fullscreen = false 
    self.caption = "Sector Five" 
    @background_image = Gosu::Image.new('images/start_screen.png') 
    end 

    def update      # <-- updates @60hZ; game logic goes here 
    end 

    def draw 
    @background_image.draw(0,0,0) 
    end 

end 

window = SectorFive.new 
window.show 

...サブディレクトリimagesと「startup_screen.png」という名前のポータブルネットワークグラフィックファイルで、このスクリプトは、左上隅に正当化PNGファイルで800x600のgosuウィンドウをロードします。

関連する問題