mirror of
https://github.com/SPLURT-Station/S.P.L.U.R.T-Station-13.git
synced 2025-12-09 07:48:55 +00:00
@@ -242,6 +242,8 @@
|
||||
SSpersistence.station_was_destroyed = TRUE
|
||||
if(!mode.allow_persistence_save)
|
||||
SSpersistence.station_persistence_save_disabled = TRUE
|
||||
else
|
||||
SSpersistence.SaveTCGCards()
|
||||
SSpersistence.CollectData()
|
||||
|
||||
//stop collecting feedback during grifftime
|
||||
|
||||
@@ -496,9 +496,15 @@ SUBSYSTEM_DEF(job)
|
||||
H.equip_to_slot_if_possible(binder, SLOT_IN_BACKPACK, disable_warning = TRUE, bypass_equip_delay_self = TRUE)
|
||||
for(var/card_type in H.client.prefs.tcg_cards)
|
||||
if(card_type)
|
||||
var/obj/item/tcg_card/card = new(get_turf(H), card_type, H.client.prefs.tcg_cards[card_type])
|
||||
card.forceMove(binder)
|
||||
binder.cards.Add(card)
|
||||
if(islist(H.client.prefs.tcg_cards[card_type]))
|
||||
for(var/duplicate in H.client.prefs.tcg_cards[card_type])
|
||||
var/obj/item/tcg_card/card = new(get_turf(H), card_type, duplicate)
|
||||
card.forceMove(binder)
|
||||
binder.cards.Add(card)
|
||||
else
|
||||
var/obj/item/tcg_card/card = new(get_turf(H), card_type, H.client.prefs.tcg_cards[card_type])
|
||||
card.forceMove(binder)
|
||||
binder.cards.Add(card)
|
||||
binder.check_for_exodia()
|
||||
if(length(H.client.prefs.tcg_decks))
|
||||
binder.decks = H.client.prefs.tcg_decks
|
||||
@@ -508,9 +514,15 @@ SUBSYSTEM_DEF(job)
|
||||
H.equip_to_slot_if_possible(binder, SLOT_IN_BACKPACK, disable_warning = TRUE, bypass_equip_delay_self = TRUE)
|
||||
for(var/card_type in N.client.prefs.tcg_cards)
|
||||
if(card_type)
|
||||
var/obj/item/tcg_card/card = new(get_turf(H), card_type, N.client.prefs.tcg_cards[card_type])
|
||||
card.forceMove(binder)
|
||||
binder.cards.Add(card)
|
||||
if(islist(H.client.prefs.tcg_cards[card_type]))
|
||||
for(var/duplicate in N.client.prefs.tcg_cards[card_type])
|
||||
var/obj/item/tcg_card/card = new(get_turf(H), card_type, duplicate)
|
||||
card.forceMove(binder)
|
||||
binder.cards.Add(card)
|
||||
else
|
||||
var/obj/item/tcg_card/card = new(get_turf(H), card_type, N.client.prefs.tcg_cards[card_type])
|
||||
card.forceMove(binder)
|
||||
binder.cards.Add(card)
|
||||
binder.check_for_exodia()
|
||||
if(length(N.client.prefs.tcg_decks))
|
||||
binder.decks = N.client.prefs.tcg_decks
|
||||
|
||||
@@ -88,7 +88,6 @@ SUBSYSTEM_DEF(persistence)
|
||||
SavePhotoPersistence() //THIS IS PERSISTENCE, NOT THE LOGGING PORTION.
|
||||
SavePaintings()
|
||||
SaveScars()
|
||||
SaveTCGCards()
|
||||
|
||||
/**
|
||||
* Loads persistent data relevant to the current map: Objects, etc.
|
||||
|
||||
@@ -381,6 +381,14 @@
|
||||
. = ..()
|
||||
LoadComponent(/datum/component/storage/concrete/tcg)
|
||||
|
||||
/obj/item/tcgcard_deck/ComponentInitialize()
|
||||
. = ..()
|
||||
var/datum/component/storage/STR = GetComponent(/datum/component/storage/concrete/tcg)
|
||||
STR.storage_flags = STORAGE_FLAGS_LEGACY_DEFAULT
|
||||
STR.max_volume = DEFAULT_VOLUME_TINY * 30
|
||||
STR.max_w_class = DEFAULT_VOLUME_TINY
|
||||
STR.max_items = 30
|
||||
|
||||
/obj/item/tcgcard_deck/update_icon_state()
|
||||
. = ..()
|
||||
if(flipped)
|
||||
@@ -797,7 +805,13 @@
|
||||
var/list/card_types = list()
|
||||
for(var/obj/item/tcg_card/card in binder.cards)
|
||||
//if(!card.illegal) //Uncomment if you want to block syndie cards from saving
|
||||
card_types[card.datum_type] = card.illegal
|
||||
if(!(card.datum_type in card_types))
|
||||
card_types[card.datum_type] = card.illegal
|
||||
else
|
||||
if(islist(card_types[card.datum_type]))
|
||||
card_types[card.datum_type] += card.illegal
|
||||
else
|
||||
card_types[card.datum_type] = list(card_types[card.datum_type], card.illegal)
|
||||
|
||||
client.prefs.tcg_decks = binder.decks
|
||||
client.prefs.tcg_cards = card_types
|
||||
|
||||
Reference in New Issue
Block a user