From 25c499ae942086b460b886e3d79dc5a55e5f1214 Mon Sep 17 00:00:00 2001 From: David Gay Date: Thu, 6 May 2021 09:42:43 -0400 Subject: Implement drop table scaling --- app/controllers/game_controller.rb | 10 +++++++++- app/views/characters/show.html.erb | 10 +++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) (limited to 'app') 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) diff --git a/app/views/characters/show.html.erb b/app/views/characters/show.html.erb index 8a3b08b..3ee7088 100644 --- a/app/views/characters/show.html.erb +++ b/app/views/characters/show.html.erb @@ -1,4 +1,12 @@ -

+

<%= @character.name %>

First entered the planes <%= pluralize((Date.current - @character.created_at.to_date).to_i, "day") %> ago.

+ +

Skills

+ + -- cgit v1.2.3