class Player # クラス定義 def walk() puts "勇者は、荒野を歩いていた。" end def attack(enemy) puts "勇者は、#{enemy}を攻撃した!" end end player1 = Player.new() # オブジェクトを生成 player1.walk() # オブジェクトのメソッドを呼び出す class Player def initialize(job) # 初期化メソッド @job = job end def walk() puts "#{@job}は、荒野を歩いていた。" end end player1 = Player.new("戦士") player1.walk() class Enemy attr_accessor :name def initialize(name) @name = name end def attack() puts "勇者は、#{@name}を攻撃した。" end end enemies = [] enemies.push(Enemy.new("スライム")) enemies.push(Enemy.new("モンスター")) enemies.push(Enemy.new("ドラゴン")) enemies.each do |enemy| enemy.attack() end class Item @@tax = 1.08 def initialize(price, quantity) @price = price @quantity = quantity end def total() (@price * @quantity * @@tax).round end end apple = Item.new(120, 15) total = apple.total() puts "合計金額は#{total}円です。" orange = Item.new(85, 32) puts "合計金額は#{orange.total}円です。" class Player @@charactor_count = 0 def initialize(name) @name = name @@charactor_count += 1 end def self.charactor_count() @@charactor_count end def attack() puts "#{@name}がボスを攻撃した。" end end players = [] players.push(Player.new("aaa")) players.push(Player.new("bbb")) players.push(Player.new("ccc")) puts "#{Player.charactor_count()}人で、ボスに立ち向かう" players.each do |player| player.attack() end