Method: BCDice::GameSystem::DarkBlaze#replace_text

Defined in:
lib/bcdice/game_system/DarkBlaze.rb

#replace_text(string) ⇒ Object



34
35
36
37
38
39
40
41
42
43
44
# File 'lib/bcdice/game_system/DarkBlaze.rb', line 34

def replace_text(string)
  return string unless string =~ /DB/i

  string = string.gsub(/DB(\d),(\d)/) { "DB#{Regexp.last_match(1)}#{Regexp.last_match(2)}" }
  string = string.gsub(/DB@(\d)@(\d)/) { "DB#{Regexp.last_match(1)}#{Regexp.last_match(2)}" }
  string = string.gsub(/DB(\d)(\d)(#(\d[+\-\d]*))/) { "3R6+#{Regexp.last_match(4)}[#{Regexp.last_match(1)},#{Regexp.last_match(2)}]" }
  string = string.gsub(/DB(\d)(\d)(#([+\-\d]*))/) { "3R6#{Regexp.last_match(4)}[#{Regexp.last_match(1)},#{Regexp.last_match(2)}]" }
  string = string.gsub(/DB(\d)(\d)/) { "3R6[#{Regexp.last_match(1)},#{Regexp.last_match(2)}]" }

  return string
end