Class: TF2LineParser::Events::Damage
- Inherits:
-
Event
- Object
- Event
- TF2LineParser::Events::Damage
show all
- Defined in:
- lib/tf2_line_parser/events/damage.rb
Instance Attribute Summary
Attributes inherited from Event
#airshot, #cap_name, #cap_number, #customkill, #healing, #item, #length, #message, #method, #player, #role, #score, #target, #team, #time, #type, #ubercharge, #unknown, #value, #weapon
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Event
#parse_time, regex_cap, regex_console, regex_message, regex_player, regex_results, regex_target, regex_time, time_format, types
Constructor Details
#initialize(time, player_name, player_steamid, player_team, target_name, target_steamid, target_team, value, weapon) ⇒ Damage
Returns a new instance of Damage.
26
27
28
29
30
31
32
33
34
|
# File 'lib/tf2_line_parser/events/damage.rb', line 26
def initialize(time, player_name, player_steamid, player_team, target_name, target_steamid, target_team, value, weapon)
@time = parse_time(time)
@player = Player.new(player_name, player_steamid, player_team)
if target_name
@target = Player.new(target_name, target_steamid, target_team)
end
@value = value.to_i
@weapon = weapon
end
|
Class Method Details
.attributes ⇒ Object
22
23
24
|
# File 'lib/tf2_line_parser/events/damage.rb', line 22
def self.attributes
@attributes ||= [:time, :player_nick, :player_steamid, :player_team, :target_nick, :target_steamid, :target_team, :value, :weapon]
end
|
.regex ⇒ Object
6
7
8
|
# File 'lib/tf2_line_parser/events/damage.rb', line 6
def self.regex
@regex ||= /#{regex_time} #{regex_player} triggered "damage" #{regex_damage_against}\(damage "(?'value'\d+)"\)(?:( #{regex_realdamage})?( #{regex_weapon})?)$/.freeze
end
|
.regex_damage_against ⇒ Object
10
11
12
|
# File 'lib/tf2_line_parser/events/damage.rb', line 10
def self.regex_damage_against
@regex_damage_against ||= /(against #{regex_target} )?/.freeze
end
|
.regex_realdamage ⇒ Object
14
15
16
|
# File 'lib/tf2_line_parser/events/damage.rb', line 14
def self.regex_realdamage
@regex_realdamage ||= /(\(realdamage "(?'realdamage'\w*)"\))?/.freeze
end
|
.regex_weapon ⇒ Object
18
19
20
|
# File 'lib/tf2_line_parser/events/damage.rb', line 18
def self.regex_weapon
@regex_weapon ||= /(\(weapon "(?'weapon'\w*)"\))?/.freeze
end
|