class PlaylyfeClient::V2::SetMetric
Attributes
items[R]
Public Class Methods
new(metric_hash, game)
click to toggle source
Calls superclass method
PlaylyfeClient::V2::Metric::new
# File lib/playlyfe_client/v2/metric/set_metric.rb, line 26 def initialize(metric_hash, game) super(metric_hash, game) fill_items(metric_hash["items"] || []) end
Public Instance Methods
apply_reward(reward, scores)
click to toggle source
# File lib/playlyfe_client/v2/metric/set_metric.rb, line 8 def apply_reward(reward, scores) reward[:value].each do |rwd_item| score_item=scores[:sets][self.id.to_sym].detect { |i| i[:name] == rwd_item[:name] } case reward[:verb] when "add" score_item[:count]+=rwd_item[:count].to_i when "remove" score_item[:count]-=rwd_item[:count].to_i when "set" score_item[:count]=rwd_item[:count].to_i end end end
Private Instance Methods
fill_items(items_hash)
click to toggle source
# File lib/playlyfe_client/v2/metric/set_metric.rb, line 32 def fill_items(items_hash) @items=[] items_hash.each_pair do |key, value| @items << {name: key , description: value["description"]} end @items end