Sha256: 1c5399952276cfed6b649bdb1c7b0cf3a1d022fdf7919dfb320519283a18257c
Contents?: true
Size: 1.42 KB
Versions: 14
Compression:
Stored size: 1.42 KB
Contents
# lib/gemwarrior/entities/monster.rb # Monster creature require_relative 'creature' require_relative 'items/herb' module Gemwarrior class Monster < Creature INVENTORY_ITEMS_DEFAULT = [Herb.new] attr_accessor :inventory, :battlecry, :is_boss def initialize if [true, false].sample self.inventory = Inventory.new([INVENTORY_ITEMS_DEFAULT[rand(0..INVENTORY_ITEMS_DEFAULT.length-1)]]) else self.inventory = Inventory.new end end def describe status_text = name.upcase.ljust(26).colorize(:green) status_text << "LEVEL: #{level.to_s.rjust(2)}, ".colorize(:white) status_text << "HP: #{hp_cur.to_s.rjust(3)}/#{hp_max.to_s.rjust(3)} ".colorize(:white) status_text << "ATK: #{atk_lo.to_s.rjust(2)}-#{atk_hi.to_s.rjust(2)} ".colorize(:white) status_text << "DEF: #{defense.to_s.rjust(2)} ".colorize(:white) status_text << "DEX: #{dexterity.to_s.rjust(2)} ".colorize(:white) status_text << "ROX: #{rox.to_s.rjust(3)} ".colorize(:white) status_text << "XP: #{xp.to_s.rjust(3)} ".colorize(:white) status_text << "FACE: #{face.ljust(12)} ".colorize(:white) status_text << "HANDS: #{hands.ljust(12)} ".colorize(:white) status_text << "MOOD: #{mood.ljust(12)}".colorize(:white) status_text << "INV: #{inventory.list_contents}".colorize(:white) status_text << "\n" end end end
Version data entries
14 entries across 14 versions & 1 rubygems