Adds card crafting!"
This commit is contained in:
@@ -466,6 +466,7 @@ GLOBAL_LIST_INIT(cardboard_recipes, list ( \
|
||||
new/datum/stack_recipe("cardboard cutout", /obj/item/cardboard_cutout, 5), \
|
||||
new/datum/stack_recipe("pizza box", /obj/item/pizzabox), \
|
||||
new/datum/stack_recipe("folder", /obj/item/folder), \
|
||||
new/datum/stack_recipe("cardboard card", /obj/item/cardboard_card, 1), \
|
||||
// holy fuck why are there so many boxes
|
||||
new/datum/stack_recipe_list("fancy boxes", list ( \
|
||||
new /datum/stack_recipe("donut box", /obj/item/storage/fancy/donut_box), \
|
||||
|
||||
@@ -2663,3 +2663,32 @@
|
||||
M.SetSleeping(0, 0)
|
||||
..()
|
||||
|
||||
//Nerdy card reagents
|
||||
|
||||
/datum/reagent/card_powder
|
||||
var/rarity = "Stoopid"
|
||||
|
||||
/datum/reagent/card_powder/blue
|
||||
name = "Blue Card Powder"
|
||||
rarity = "Rare"
|
||||
color = "#00B7EF" // blue
|
||||
|
||||
/datum/reagent/card_powder/purple
|
||||
name = "Purple Card Powder"
|
||||
rarity = "Epic"
|
||||
color = "#DA00FF" // purple
|
||||
|
||||
/datum/reagent/card_powder/yellow
|
||||
name = "Yellow Crayon Powder"
|
||||
rarity = "Legendary"
|
||||
color = "#FFF200" // yellow
|
||||
|
||||
/datum/reagent/card_powder/green
|
||||
name = "Green Crayon Powder"
|
||||
rarity = "Common"
|
||||
color = "#A8E61D" // green
|
||||
|
||||
/datum/reagent/card_powder/black
|
||||
name = "Black Crayon Powder"
|
||||
rarity = "Exodia"
|
||||
color = "#1C1C1C" // not quite black
|
||||
|
||||
@@ -881,3 +881,29 @@
|
||||
results = list(/datum/reagent/carbon = 1)
|
||||
required_reagents = list(/datum/reagent/cellulose = 1)
|
||||
required_temp = 512
|
||||
|
||||
//Nerdy card shit
|
||||
|
||||
/datum/chemical_reaction/card_powder/blue
|
||||
name = "Blue Card Powder"
|
||||
id = /datum/reagent/card_powder/blue
|
||||
results = list(/datum/reagent/card_powder/blue = 1)
|
||||
required_reagents = list(/datum/reagent/card_powder/green = 12)
|
||||
|
||||
/datum/chemical_reaction/card_powder/purple
|
||||
name = "Purple Card Powder"
|
||||
id = /datum/reagent/card_powder/purple
|
||||
results = list(/datum/reagent/card_powder/purple = 1)
|
||||
required_reagents = list(/datum/reagent/card_powder/blue = 12)
|
||||
|
||||
/datum/chemical_reaction/card_powder/yellow
|
||||
name = "Yellow Card Powder"
|
||||
id = /datum/reagent/card_powder/yellow
|
||||
results = list(/datum/reagent/card_powder/yellow = 1)
|
||||
required_reagents = list(/datum/reagent/card_powder/purple = 12)
|
||||
|
||||
/datum/chemical_reaction/card_powder/black
|
||||
name = "Black Card Powder"
|
||||
id = /datum/reagent/card_powder/black
|
||||
results = list(/datum/reagent/card_powder/black = 1)
|
||||
required_reagents = list(/datum/reagent/card_powder/yellow = 12)
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
#define TAPPED_ANGLE 90
|
||||
#define UNTAPPED_ANGLE 0
|
||||
|
||||
#define COMMON_SERIES list(/datum/tcg_card/pack_1, /datum/tcg_card/exodia) //So star cards don't drop
|
||||
|
||||
/datum/tcg_card
|
||||
var/name = "Stupid Coder"
|
||||
var/desc = "A coder that fucked up this card. Report if you see this."
|
||||
@@ -119,6 +121,18 @@
|
||||
desc = card_datum.desc
|
||||
illegal = illegal_card
|
||||
|
||||
switch(card_datum.rarity)
|
||||
if("Common")
|
||||
grind_results = list(/datum/reagent/card_powder/green = 1)
|
||||
if("Rare")
|
||||
grind_results = list(/datum/reagent/card_powder/blue = 1)
|
||||
if("Epic")
|
||||
grind_results = list(/datum/reagent/card_powder/purple = 1)
|
||||
if("Legendary")
|
||||
grind_results = list(/datum/reagent/card_powder/yellow = 1)
|
||||
if("Exodia")
|
||||
grind_results = list(/datum/reagent/card_powder/black = 1)
|
||||
|
||||
/obj/item/tcg_card/attack_hand(mob/user)
|
||||
var/list/possible_actions = list(
|
||||
"Pick Up" = image(icon = 'icons/mob/radial.dmi', icon_state = "radial_pickup"),
|
||||
@@ -674,5 +688,27 @@
|
||||
|
||||
A direct attack healths as follows: The attacking unit declares an attack against the opponent's lifeshards. Your opponent may then declare a defender if one is available, who will then turn the combat into an attack against a unit for the purposes of combat that turn. If the attack is not blocked, and the direct attack connects, then your opponent loses a number of lifeshards equal to the attacking units power. </span>"
|
||||
|
||||
/obj/item/cardboard_card
|
||||
name = "cardboard card cutout"
|
||||
desc = "A small piece of cardboard shaped as a TCG card."
|
||||
icon = 'icons/obj/tcg/misc.dmi'
|
||||
icon_state = "template"
|
||||
|
||||
/datum/reagent/card_powder/reaction_obj(obj/O, reac_volume)
|
||||
if(istype(O, /obj/item/cardboard_card))
|
||||
qdel(O)
|
||||
var/list/possible_cards = list()
|
||||
for(var/card_series in COMMON_SERIES)
|
||||
for(var/card_type in subtypesof(card_series))
|
||||
var/datum/tcg_card/card = new card_type
|
||||
if(card.rarity == rarity)
|
||||
possible_cards.Add(card_type)
|
||||
qdel(card)
|
||||
if(length(possible_cards))
|
||||
new /obj/item/tcg_card(get_turf(O), pick(possible_cards), TRUE)
|
||||
|
||||
. = ..()
|
||||
|
||||
#undef COMMON_SERIES
|
||||
#undef TAPPED_ANGLE
|
||||
#undef UNTAPPED_ANGLE
|
||||
|
||||
Reference in New Issue
Block a user