Creature module for the Dragon class

I could have “instance” variables in Creature, which Dragon objects
can use? Dragon would have all the methods of the Creature module
available, for instance attribute accessors?

C:\code>
C:\code>
C:\code>type Creature.rb
module Creature

def sayHi
print “\nhi\n\n”
end

end
C:\code>
C:\code>type Dragon.rb
require ‘Creature’

class Dragon
extend Creature
include Creature

def toString
print “\ndragon\n”
end

end
C:\code>

thanks,

Thufir

Thufir wrote:

I could have “instance” variables in Creature, which Dragon objects
can use? Dragon would have all the methods of the Creature module
available, for instance attribute accessors?

module Creature
def kingdom=(some_kingdom)
@kingdom = some_kingdom
end

def kingdom
@kingdom
end
end

class Dragon
include Creature
end

d = Dragon.new
d.kingdom = ‘Mordor’
puts d.kingdom

–output:–
Mordor

On Nov 8, 10:32 pm, 7stud – [email protected] wrote:
[…]

class Dragon
include Creature
end

d = Dragon.new
d.kingdom = ‘Mordor’
puts d.kingdom

–output:–
Mordor

This is interesting because it brings up the next problem:
locations. In this case, kingdoms. I changed the design a bit so
that Creature is a class from which Dragon and so forth inherit. One
approach I was thinking about would be to give each creature instance
a few objects, such as: statistics, kingdom and inventory. (Right
now the “statistics” portion is built in directly to the class, I’m
considering making a class for these traits.)

Each Creature needs a kingdom (even if it’s “banished” or something),
and, of course, a kingdom can “hold” many creature objects. In
tables, the “kingdom” table would have a one-to-many relation to the
“creatures” table.

Just thinking outloud…

-Thufir