From 2cd339f77656908105fbf26d4cf9aaefde00766f Mon Sep 17 00:00:00 2001
From: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
Date: Thu, 4 Feb 2021 18:57:00 +0300
Subject: [PATCH] Adds Card Ops bundle
---
.../game/objects/items/storage/uplink_kits.dm | 4 ++
code/modules/cargo/packs/costumes_toys.dm | 8 +++-
code/modules/tcg/cards.dm | 41 +++++++++++++++---
code/modules/tcg/pack_star.dm | 27 +++++++-----
.../uplink/uplink_items/uplink_badass.dm | 8 ++++
icons/obj/tcg/misc.dmi | Bin 5068 -> 5212 bytes
6 files changed, 70 insertions(+), 18 deletions(-)
diff --git a/code/game/objects/items/storage/uplink_kits.dm b/code/game/objects/items/storage/uplink_kits.dm
index 97012528a0..15fc42b469 100644
--- a/code/game/objects/items/storage/uplink_kits.dm
+++ b/code/game/objects/items/storage/uplink_kits.dm
@@ -526,3 +526,7 @@
new /obj/item/book/granter/martial/carp(src)
new /obj/item/clothing/suit/hooded/carp_costume(src)
new /obj/item/staff/bostaff(src)
+
+/obj/item/storage/box/syndie_kit/sleepytime/cardpack/PopulateContents()
+ . = ..()
+ new /obj/item/cardpack/syndicate(src)
diff --git a/code/modules/cargo/packs/costumes_toys.dm b/code/modules/cargo/packs/costumes_toys.dm
index 8091c233ef..c0bd25b028 100644
--- a/code/modules/cargo/packs/costumes_toys.dm
+++ b/code/modules/cargo/packs/costumes_toys.dm
@@ -344,6 +344,12 @@
/datum/supply_pack/costumes_toys/randomised/tcg/generate()
. = ..()
var/cardpacktype
+ var/list/cardtypes = subtypesof(/obj/item/cardpack)
+ for(var/cardtype in cardtypes)
+ var/obj/item/cardpack/pack = new cardtype(.)
+ if(pack.illegal)
+ cardtypes.Remove(cardtype)
+ qdel(pack)
for(var/i in 1 to 10)
- cardpacktype = pick(subtypesof(/obj/item/cardpack))
+ cardpacktype = pick(cardtypes)
new cardpacktype(.)
diff --git a/code/modules/tcg/cards.dm b/code/modules/tcg/cards.dm
index db2f24c64a..65448c1687 100644
--- a/code/modules/tcg/cards.dm
+++ b/code/modules/tcg/cards.dm
@@ -80,6 +80,8 @@
/obj/item/tcg_card/examine(mob/user)
. = ..()
sleep(2) //So it prints this shit after the examine
+ if(flipped)
+ return
to_chat(user, "This card has following stats:")
to_chat(user, "Mana cost: [card_datum.mana_cost]")
to_chat(user, "Health: [card_datum.health]")
@@ -90,6 +92,8 @@
to_chat(user, "It's effect is: [card_datum.rules]")
/obj/item/tcg_card/openTip(location, control, params, user) //Overriding for nice UI
+ if(flipped)
+ return ..()
var/desc_content = "[desc]
\
This card has following stats:
\
Mana cost: [card_datum.mana_cost]
\
@@ -108,6 +112,8 @@
card_datum = new datum_type
icon = card_datum.pack
icon_state = card_datum.icon_state
+ name = card_datum.name
+ desc = card_datum.desc
/obj/item/tcg_card/attack_hand(mob/user)
var/list/possible_actions = list(
@@ -212,7 +218,7 @@
icon_state = "cardpack"
w_class = WEIGHT_CLASS_TINY
///The card series to look in
- var/series = /datum/tcg_card/pack_1
+ var/list/series = list(/datum/tcg_card/pack_1, /datum/tcg_card/exodia)
///Chance of the pack having a coin in it out of 10
var/contains_coin = -1
///The amount of cards to draw from the rarity table
@@ -222,7 +228,8 @@
"Common" = 900,
"Rare" = 300,
"Epic" = 50,
- "Legendary" = 3)
+ "Legendary" = 3,
+ "Exodia" = 1) //Basically 0.1%, it doesn't have guar. rarity
///The amount of cards to draw from the guarenteed rarity table
var/guaranteed_count = 1
///The guaranteed rarity table, acts about the same as the rarity table. it can have as many or as few raritys as you'd like
@@ -231,15 +238,37 @@
"Epic" = 9,
"Rare" = 30)
+ var/illegal = FALSE //Can cargo get it?
+
custom_price = PRICE_EXPENSIVE
/obj/item/cardpack/series_one
name = "Trading Card Pack: 2560 Core Set"
desc = "Contains six cards of varying rarity from the 2560 Core Set. Collect them all!"
icon_state = "cardpack"
- series = /datum/tcg_card/pack_1
+ series = list(/datum/tcg_card/pack_1, /datum/tcg_card/exodia)
contains_coin = 10
+/obj/item/cardpack/syndicate //Higher chances more cards no exodia
+ name = "Trading Card Pack: Nuclear Cards"
+ desc = "Contains twelve cards of varying rarity from the 2560 Core Set. This pack was stamped by Waffle Co."
+ icon_state = "cardpack_syndicate"
+ series = list(/datum/tcg_card/pack_1) //, /datum/tcg_card/nuclear)
+ contains_coin = 100
+
+ card_count = 10
+ rarity_table = list(
+ "Common" = 400,
+ "Rare" = 160,
+ "Epic" = 40,
+ "Legendary" = 10)
+
+ guaranteed_count = 2
+ guar_rarity = list(
+ "Legendary" = 5,
+ "Epic" = 10,
+ "Rare" = 20)
+
/obj/item/cardpack/equipped(mob/user, slot, initial)
. = ..()
transform = matrix()
@@ -263,9 +292,11 @@
/obj/item/cardpack/proc/buildCardListWithRarity(card_cnt, rarity_cnt)
var/list/return_cards = list()
- var/list/cards = subtypesof(series)
+ var/list/cards = list()
+ for(var/card_type in series)
+ cards.Add(subtypesof(card_type))
var/list/possible_cards = list()
- var/list/rarity_cards = list("Legendary" = list(), "Epic" = list(), "Rare" = list(), "Common" = list())
+ var/list/rarity_cards = list("Exodia" = list(), "Legendary" = list(), "Epic" = list(), "Rare" = list(), "Common" = list())
for(var/card in cards)
var/datum/tcg_card/new_card = new card()
possible_cards[card] = rarity_table[new_card.rarity]
diff --git a/code/modules/tcg/pack_star.dm b/code/modules/tcg/pack_star.dm
index 01f8f4c87a..6c39231c8b 100644
--- a/code/modules/tcg/pack_star.dm
+++ b/code/modules/tcg/pack_star.dm
@@ -224,7 +224,10 @@
//Ultimate Exodia cards. I really, really doubt that someone will ever find them.
-/datum/tcg_card/pack_star/exodia_singulo
+/datum/tcg_card/exodia
+ pack = 'icons/obj/tcg/pack_star.dmi'
+
+/datum/tcg_card/exodia/exodia_singulo
name = "Singularity"
desc = "A monstrous gravitational singularity, pitch black(but not quiet) and very menacings."
rules = "This card doesn't leave field. At the end of each turn: Remove all the cards from the field."
@@ -236,7 +239,7 @@
rarity = "Legendary"
card_type = "Spell"
-/datum/tcg_card/pack_star/exodia_tesla
+/datum/tcg_card/exodia/exodia_tesla
name = "Energy Orb"
desc = "An orb made out of hypercharged plasma. An ultimate bug zapper."
rules = "This card doesn't leave field. Every turn all units take 2 damage."
@@ -245,10 +248,10 @@
mana_cost = 8
faction = "Exodia"
- rarity = "Legendary"
+ rarity = "Exodia"
card_type = "Spell"
-/datum/tcg_card/pack_star/exodia_narie
+/datum/tcg_card/exodia/exodia_narie
name = "Nar-Sie"
desc = "An avatar of the Nar-Sie, one of the Eldritch Gods."
rules = "This card doesn't leave field. Every turn all friendly units take 1 damage and you restore 1 lifeshard ."
@@ -257,10 +260,10 @@
mana_cost = 8
faction = "Exodia"
- rarity = "Legendary"
+ rarity = "Exodia"
card_type = "Spell"
-/datum/tcg_card/pack_star/exodia_ratvar
+/datum/tcg_card/exodia/exodia_ratvar
name = "Ratvar"
desc = "Ratvar, the god of cogs and clockwork mechanisms, was trapped by Nar-Sie a long ago."
rules = "This card doesn't leave field. Every turn enemy hero recieves 1 lifeshard damage."
@@ -269,7 +272,7 @@
mana_cost = 8
faction = "Exodia"
- rarity = "Legendary"
+ rarity = "Exodia"
card_type = "Spell"
/datum/tcg_card/pack_star/exodia
@@ -281,20 +284,20 @@
mana_cost = 8
faction = "Exodia"
- rarity = "Legendary"
+ rarity = "Exodia"
card_type = "Spell"
/obj/item/tcg_card/special/exodia_singulo
- datum_type = /datum/tcg_card/pack_star/exodia_singulo
+ datum_type = /datum/tcg_card/exodia/exodia_singulo
/obj/item/tcg_card/special/exodia_tesla
- datum_type = /datum/tcg_card/pack_star/exodia_tesla
+ datum_type = /datum/tcg_card/exodia/exodia_tesla
/obj/item/tcg_card/special/exodia_narie
- datum_type = /datum/tcg_card/pack_star/exodia_narie
+ datum_type = /datum/tcg_card/exodia/exodia_narie
/obj/item/tcg_card/special/exodia_ratvar
- datum_type = /datum/tcg_card/pack_star/exodia_ratvar
+ datum_type = /datum/tcg_card/exodia/exodia_ratvar
/obj/item/tcg_card/special/exodia
datum_type = /datum/tcg_card/pack_star/exodia
diff --git a/code/modules/uplink/uplink_items/uplink_badass.dm b/code/modules/uplink/uplink_items/uplink_badass.dm
index 43e5523bad..e820a90e0f 100644
--- a/code/modules/uplink/uplink_items/uplink_badass.dm
+++ b/code/modules/uplink/uplink_items/uplink_badass.dm
@@ -78,3 +78,11 @@
limited_stock = 1
cant_discount = TRUE
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
+
+/datum/uplink_item/badass/cardpack
+ name = "TCG Card Operatives Bundle"
+ desc = "A pack full of goodies required to work as a TCG Card Operative. A warm pajama, a mug of cocoa, a plushie and a pack full of rare 2560 Core Set cards!"
+ item = /obj/item/storage/box/syndie_kit/sleepytime/cardpack
+ cost = 20
+ include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
+
diff --git a/icons/obj/tcg/misc.dmi b/icons/obj/tcg/misc.dmi
index 51ed6e2cf36233db50d59c059a801f87a7760526..2844ec5d0afbace62742401ebc347de6656f451e 100644
GIT binary patch
delta 4686
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
B#<>6h
delta 4502
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