summaryrefslogtreecommitdiff
path: root/app/controllers/game_controller.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/controllers/game_controller.rb')
-rw-r--r--app/controllers/game_controller.rb10
1 files changed, 9 insertions, 1 deletions
diff --git a/app/controllers/game_controller.rb b/app/controllers/game_controller.rb
index 4e55924..d69645f 100644
--- a/app/controllers/game_controller.rb
+++ b/app/controllers/game_controller.rb
@@ -13,7 +13,15 @@ class GameController < ApplicationController
result[:table].sort_by { |_, v| -v[:score] }.each do |item_gid, item_data|
quantity = item_data[:quantity] || 1
- if table_roll >= item_data[:score]
+
+ score = item_data[:score]
+ if result[:table_scaling]
+ result[:table_scaling][:skills]&.each do |skill_gid, scale_value|
+ score = score**(1 + (scale_value * current_char.skill_level(skill_gid)))
+ end
+ end
+
+ if table_roll >= score
item = Item.find_by_gid(item_gid)
xp_awards = {}
if item.whatnot && item.whatnot.key?(:xp_value)