z_mirror/CursorEnhancements
git clone https://git.raiguard.me/z_mirror/CursorEnhancements
326e445
proxies
1local player_data ={} 2 3local constants =require ( "constants" ) 4 5local util =require ( "scripts.util" ) 6 7function player_data . init ( player_index , player ) 8global . players [ player_index ] ={ 9flags ={ 10building =false 11} , 12last_item =nil , 13main_inventory =player . get_main_inventory (), 14settings ={} 15} 16end 17 18function player_data . update_settings ( player , player_table ) 19local player_settings =player . mod_settings 20local saved_settings =player_table . settings 21for setting_name , save_as in pairs ( constants . setting_name_mapping ) do 22saved_settings [ save_as ] =player_settings [ setting_name ]. value 23end 24end 25 26function player_data . update_personal_overrides ( player , player_table ) 27-- retrieve and parse personal overrides 28local overrides =game . json_to_table ( player . mod_settings [ 'cen-personal-registry-overrides' ]. value ) 29if not overrides or type ( overrides ) == "string" then 30player . { 'cen-message.invalid-personal-overrides-format' } 31overrides ={} 32end 33-- convert to registry and save 34player_table . registry =util . apply_overrides ( {} , overrides , game . item_prototypes ) 35end 36 37function player_data . refresh ( player , player_table ) 38player_data . update_settings ( player , player_table ) 39player_data . update_personal_overrides ( player , player_table ) 40end 41 42function player_data . ensure_valid_inventory ( player , player_table ) 43if not player_table . main_inventory or not player_table . main_inventory . valid then 44player_table . main_inventory =player . get_main_inventory () 45end 46end 47 48return player_data