133 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
			
		
		
	
	
			133 lines
		
	
	
		
			3.9 KiB
		
	
	
	
		
			Lua
		
	
	
	
	
	
| 
 | |
| -- THIS IS NO LONGER BEING USED
 | |
| -- Leaving this in for sentimental value :)
 | |
| 
 | |
| local Cartomancer_replacements = {
 | |
|     {
 | |
|         find = [[
 | |
| 	for k, v in ipairs%(G%.playing_cards%) do
 | |
| 		if v%.base%.suit then table%.insert%(SUITS%[v%.base%.suit%], v%) end]],
 | |
|     -- Steamodded<0917b
 | |
|         find_alt = [[
 | |
| 	for k, v in ipairs%(G%.playing_cards%) do
 | |
| 		table%.insert%(SUITS%[v%.base%.suit%], v%)]],
 | |
|         place = [[
 | |
| local SUITS_SORTED = Cartomancer.tablecopy(SUITS)
 | |
| for k, v in ipairs(G.playing_cards) do
 | |
|   if v.base.suit then
 | |
|   local greyed
 | |
|   if unplayed_only and not ((v.area and v.area == G.deck) or v.ability.wheel_flipped) then
 | |
|     greyed = true
 | |
|   end
 | |
|   local card_string = v:cart_to_string {deck_view = true}
 | |
|   if greyed then
 | |
|     card_string = card_string .. "Greyed" -- for some reason format doesn't work and final string is `sGreyed`
 | |
|   end
 | |
|   if greyed and Cartomancer.SETTINGS.deck_view_hide_drawn_cards then
 | |
|   -- Ignore this card.
 | |
|   elseif not SUITS[v.base.suit][card_string] then
 | |
|     -- Initiate stack
 | |
|     table.insert(SUITS_SORTED[v.base.suit], card_string)
 | |
| 
 | |
|     local _scale = 0.7
 | |
|     local copy = copy_card(v, nil, _scale)
 | |
| 
 | |
|     copy.greyed = greyed
 | |
|     copy.stacked_quantity = 1
 | |
| 
 | |
|     SUITS[v.base.suit][card_string] = copy
 | |
|   else
 | |
|     -- Stack cards
 | |
|     local stacked_card = SUITS[v.base.suit][card_string]
 | |
|     stacked_card.stacked_quantity = stacked_card.stacked_quantity + 1
 | |
|   end
 | |
|   end]]
 | |
|     },
 | |
| 
 | |
|     {
 | |
|         find = "card_limit = #SUITS%[suit_map%[j%]%],",
 | |
|         place = "card_limit = #SUITS_SORTED[suit_map[j]],"
 | |
|     },
 | |
| 
 | |
|     {
 | |
|         find = [[
 | |
| for i = 1%, %#SUITS%[suit_map%[j%]%] do
 | |
| 				if SUITS%[suit_map%[j%]%]%[i%] then
 | |
| 					local greyed%, _scale = nil%, 0%.7
 | |
| 					if unplayed_only and not %(%(SUITS%[suit_map%[j%]%]%[i%]%.area and SUITS%[suit_map%[j%]%]%[i%]%.area == G%.deck%) or SUITS%[suit_map%[j%]%]%[i%]%.ability%.wheel_flipped%) then
 | |
| 						greyed = true
 | |
| 					end
 | |
| 					local copy = copy_card%(SUITS%[suit_map%[j%]%]%[i%]%, nil%, _scale%)
 | |
| 					copy%.greyed = greyed
 | |
| 					copy%.T%.x = view_deck%.T%.x %+ view_deck%.T%.w %/ 2
 | |
| 					copy%.T%.y = view_deck%.T%.y
 | |
| 
 | |
| 					copy:hard_set_T%(%)
 | |
| 					view_deck:emplace%(copy%)
 | |
| 				end
 | |
| 			end]],
 | |
|         place = [[
 | |
| for i = 1%, %#SUITS_SORTED%[suit_map%[j%]%] do
 | |
|   local card_string = SUITS_SORTED%[suit_map%[j%]%]%[i%]
 | |
|   local card = SUITS%[suit_map%[j%]%]%[card_string%]
 | |
| 
 | |
|   card%.T%.x = view_deck%.T%.x %+ view_deck%.T%.w%/2
 | |
|   card%.T%.y = view_deck%.T%.y
 | |
|   card:create_quantity_display%(%)
 | |
| 
 | |
|   card:hard_set_T%(%)
 | |
|   view_deck:emplace%(card%)
 | |
| end]]
 | |
|     },
 | |
|     
 | |
|     {
 | |
|       find = '			modded and {n = G.UIT.R, config = {align = "cm"}, nodes = {',
 | |
|       place = [=[
 | |
|       not unplayed_only and Cartomancer.add_unique_count() or nil,
 | |
| 			modded and {n = G.UIT.R, config = {align = "cm"}, nodes = {]=]
 | |
|   },
 | |
| 
 | |
| }
 | |
| 
 | |
| 
 | |
| --  Mom, can we have lovely patches for overrides.lua?
 | |
| --  No, we have lovely patches at home
 | |
| 
 | |
| --  Lovely patches at home:
 | |
| 
 | |
| local Cartomancer_nfs_read
 | |
| local Cartomancer_nfs_read_override = function (containerOrName, nameOrSize, sizeOrNil)
 | |
|     local data, size = Cartomancer_nfs_read(containerOrName, nameOrSize, sizeOrNil)
 | |
| 
 | |
|     if type(containerOrName) ~= "string" then
 | |
|         return data, size
 | |
|     end
 | |
|     local overrides = '/overrides.lua'
 | |
|     if containerOrName:sub(-#overrides) ~= overrides then
 | |
|         return data, size
 | |
|     end
 | |
| 
 | |
|     local replaced = 0
 | |
|     local total_replaced = 0
 | |
|     for _, v in ipairs(Cartomancer_replacements) do
 | |
|         data, replaced = string.gsub(data, v.find, v.place)
 | |
| 
 | |
|         if replaced == 0 and v.find_alt then
 | |
|           data, replaced = string.gsub(data, v.find_alt, v.place)
 | |
|         end
 | |
| 
 | |
|         if replaced == 0 then
 | |
|           print("Failed to replace " .. v.find .. " for overrides.lua")
 | |
|         else
 | |
|           total_replaced = total_replaced + 1
 | |
|         end
 | |
|     end
 | |
| 
 | |
|     print("Totally applied " .. total_replaced .. " replacements to overrides.lua")
 | |
| 
 | |
|     -- We no longer need this override
 | |
|     NFS.read = Cartomancer_nfs_read
 | |
|     
 | |
|     return data, size
 | |
| end
 |