Wrap text
Report abuse
require 'singleton'
module Terminator
class Head
include Singleton
@bonked = false
class << self
def injured?
@bonked
end
def bonk
@bonked = !@bonked
return "Ouch!"
end
end
end
class Mission
def initialize
@missions = { :usual => "Kill John Connor",
:opposite => "Protect John Connor" }
@accomplished = false
end
def perform
x = (Terminator::Head.injured? ? :opposite : :usual)
puts "Executing mission: #{@missions[x]}";
while !@accomplished
end
puts "Mission accomplished."
return true
end
end
end