class RuneRb::Item::WeightListener
Attributes
player[R]
Public Class Methods
new(player)
click to toggle source
# File app/model/item.rb, line 112 def initialize(player) @player = player end
Public Instance Methods
items_changed(container)
click to toggle source
# File app/model/item.rb, line 124 def items_changed(container) update_weight end
slot_changed(container, slot)
click to toggle source
# File app/model/item.rb, line 116 def slot_changed(container, slot) update_weight end
slots_changed(container, slots)
click to toggle source
# File app/model/item.rb, line 120 def slots_changed(container, slots) update_weight end
Private Instance Methods
calculate_weight()
click to toggle source
# File app/model/item.rb, line 135 def calculate_weight weight = 0.0 weight += @player.inventory.items.inject(0) {|sum, item| sum + (item ? item.definition.weight : 0) } weight += @player.equipment.items.inject(0) {|sum, item| sum + (item ? item.definition.weight : 0) } weight end
update_weight()
click to toggle source
# File app/model/item.rb, line 130 def update_weight weight = calculate_weight @player.connection.send_data RuneRb::Net::PacketBuilder.new(240).add_short(weight.to_i).to_packet end