Adds unique ruin cards and Exodia cards)

This commit is contained in:
SmArtKar
2021-02-04 16:42:55 +03:00
parent 41d6ab6b07
commit 348f57968f
19 changed files with 413 additions and 22 deletions
+55 -6
View File
@@ -72,8 +72,12 @@
w_class = WEIGHT_CLASS_TINY
var/flipped = TRUE
var/flipped = FALSE
var/tapped = FALSE
var/special = FALSE
/obj/item/tcg_card/special
special = TRUE
/obj/item/tcg_card/examine(mob/user)
. = ..()
@@ -101,9 +105,11 @@
/obj/item/tcg_card/New(loc, new_datum)
. = ..()
datum_type = new_datum
if(!special)
datum_type = new_datum
card_datum = new datum_type
icon = card_datum.pack
icon_state = card_datum.icon_state
/obj/item/tcg_card/attack_hand(mob/user)
var/list/possible_actions = list(
@@ -468,6 +474,7 @@
icon_state = "binder"
var/list/cards = list()
var/mode = 0 //If 1, will show all the cards even if you don't have em
/obj/item/tcgcard_binder/attackby(obj/item/I, mob/living/user, params)
if(istype(I, /obj/item/tcg_card))
@@ -476,15 +483,57 @@
cards.Add(card)
. = ..()
/obj/item/tcgcard_binder/attack_self(mob/living/carbon/user)
mode = !mode
to_chat(user, "<span class='notice'>[src] now shows you [mode ? "all the different cards" : "the cards you already have"].")
/obj/item/tcgcard_binder/attack_hand(mob/living/carbon/user)
if(loc == user)
var/list/choices = list()
for(var/obj/item/tcg_card/card in cards)
choices[card] = image(icon = card.icon, icon_state = card.icon_state)
if(mode)
var/card_types = list()
for(var/obj/item/tcg_card/card in cards)
card_types[card.datum_type] = card
for(var/card_type in subtypesof(/datum/tcg_card))
if(card_type in card_types)
choices[card_types[card_type]] = image(icon = card_types[card_type].icon, icon_state = card_types[card_type].icon_state)
continue
var/datum/tcg_card/card_dat = new card_type
if(card_dat.name == "Stupid Coder")
continue
var/image/I = image(icon = card_dat.pack, icon_state = card_dat.icon_state)
I.color = "#999999"
choices[card_dat.name] = I
qdel(card_dat)
else
for(var/obj/item/tcg_card/card in cards)
choices[card] = image(icon = card.icon, icon_state = card.icon_state)
var/obj/item/tcg_card/choice = show_radial_menu(user, src, choices, require_near = TRUE, tooltips = TRUE)
if(choice)
if(choice && choice in cards)
choice.forceMove(get_turf(src))
user.put_in_hands(choice)
cards.Remove(choice)
return
if(choice)
return
. = ..()
/obj/item/tcgcard_binder/proc/check_for_exodia()
var/list/card_types = list()
for(var/obj/item/tcg_card/card in cards)
card_types.Add(card.datum_type)
for(var/card_type in subtypesof(/datum/tcg_card))
var/datum/tcg_card/card_dat = new card_type
if(card_dat.name == "Stupid Coder" || card_dat.name == "Eldritch Horror") //It would be stupid if we require exodia or system cards to get exodia
continue
qdel(card_dat)
if(!(card_type in card_types))
return
var/obj/item/tcg_card/card = new(get_turf(src), /datum/tcg_card/pack_star/exodia)
card.forceMove(src)
cards.Add(card)
+301
View File
@@ -0,0 +1,301 @@
/datum/tcg_card/pack_star
pack = 'icons/obj/tcg/pack_star.dmi'
/datum/tcg_card/pack_star/golem
name = "Adamantine Golem"
desc = "An adamantine golem, immune to magic and being able to coordinate other golems, has a great power in combat."
rules = "Holy. Taunt."
icon_state = "captain"
mana_cost = 4
attack = 4
health = 5
faction = "Unique"
rarity = "Rare"
card_type = "Unit"
/obj/item/tcg_card/special/golem
datum_type = /datum/tcg_card/pack_star/golem
/datum/tcg_card/pack_star/xenomaid
name = "Lusty Xenomorph Maid"
desc = "Just a lusty xenomorph maid, nothing to see here."
rules = "Blocker. Each turn, gain -1/-1."
icon_state = "xenomaid"
mana_cost = 3
attack = 6
health = 6
faction = "Unique"
rarity = "Epic"
card_type = "Unit"
/obj/item/tcg_card/special/xenomaid
datum_type = /datum/tcg_card/pack_star/xenomaid
/datum/tcg_card/pack_star/morph
name = "Morph"
desc = "A revolting, pulsating pile of flesh that can mimic everything it sees."
rules = "On summon: Copy stats of an opponent's card."
icon_state = "morph"
mana_cost = 4
attack = 0
health = 1
faction = "Unique"
rarity = "Common"
card_type = "Unit"
/obj/item/tcg_card/special/morph
datum_type = /datum/tcg_card/pack_star/morph
/datum/tcg_card/pack_star/demonic_miner
name = "Demonic Miner"
desc = "An soul of extremely geared miner, driven crazy or possessed by the demonic forces here, either way a terrifying enemy."
rules = "Each turn: Deal 1 damage to all the creatures on the field."
icon_state = "demonic_miner"
mana_cost = 4
attack = 4
health = 5
faction = "Unique"
rarity = "Rare"
card_type = "Unit"
/obj/item/tcg_card/special/demonic_miner
datum_type = /datum/tcg_card/pack_star/demonic_miner
/datum/tcg_card/pack_star/wendigo
name = "Wendigo"
desc = "A mythological man-eating legendary creature, you probably aren't going to survive this."
rules = ""
icon_state = "wendigo"
mana_cost = 5
attack = 6
health = 3
faction = "Unique"
rarity = "Common"
card_type = "Unit"
/obj/item/tcg_card/special/wendigo
datum_type = /datum/tcg_card/pack_star/wendigo
/datum/tcg_card/pack_star/honk
name = "H.O.N.K. Mech"
desc = "Produced by \"Tyranny of Honk, INC\", this exosuit is designed as heavy clown-support. Used to spread the fun and joy of life. HONK!"
rules = "Taunt."
icon_state = "honk"
mana_cost = 8
attack = 6
health = 8
faction = "Unique"
rarity = "Epic"
card_type = "Unit"
/obj/item/tcg_card/special/honk
datum_type = /datum/tcg_card/pack_star/honk
/datum/tcg_card/pack_star/ratvar
name = "Clockwork Slab"
desc = "A link between clockwork servants and the Celestial Derelict. It contains information, recites scripture, and is Servant's most vital tool."
rules = "Equipped unit gains Clockwork and can't attack units with Holy."
icon_state = "ratvar"
mana_cost = 2
attack = 3
health = 0
faction = "Unique"
rarity = "Common"
card_type = "Equipment"
/obj/item/tcg_card/special/ratvar
datum_type = /datum/tcg_card/pack_star/ratvar
/datum/tcg_card/pack_star/hierophant
name = "Hierophant Club"
desc = "The strange technology of this large club allows various nigh-magical feats. It used to beat you, but now you can set the beat."
rules = "Lower all damage equipped unit recieves by 1. Give equipped unit First Strike."
icon_state = "hierophant"
mana_cost = 5
attack = 2
health = 0
faction = "Unique"
rarity = "Rare"
card_type = "Equipment"
/obj/item/tcg_card/special/hierophant
datum_type = /datum/tcg_card/pack_star/hierophant
/datum/tcg_card/pack_star/abductor
name = "Alien Gland"
desc = "A nausea-inducing hunk of twisting flesh and metal. These things are often found after people were abducted by grey-skinned aliens."
rules = "Each turn: Flip a coin. If heads, unit gain +1/+2. If tails, unit gains -2/-1."
icon_state = "abductor"
mana_cost = 2
attack = 0
health = 0
faction = "Unique"
rarity = "Common"
card_type = "Equipment"
/obj/item/tcg_card/special/abductor
datum_type = /datum/tcg_card/pack_star/abductor
/datum/tcg_card/pack_star/space_carp
name = "Space Carp"
desc = "A failed weaponery experiment, looking like a ferocious, fang-bearing creature that resembles a fish."
rules = ""
icon_state = "space_carp"
mana_cost = 1
attack = 2
health = 2
faction = "Unique"
rarity = "Common"
card_type = "Unit"
/obj/item/tcg_card/special/space_carp
datum_type = /datum/tcg_card/pack_star/space_carp
/datum/tcg_card/pack_star/spess_pirate
name = "Space Pirate"
desc = "Space Pirate does whatever he wants because he is free. Sadly, Space Rum insn't free."
rules = "On summon: Draw 2 cards. If there are no spells, discard them."
icon_state = "spess_pirate"
mana_cost = 4
attack = 3
health = 2
faction = "Unique"
rarity = "Rare"
card_type = "Unit"
/obj/item/tcg_card/special/spess_pirate
datum_type = /datum/tcg_card/pack_star/spess_pirate
/datum/tcg_card/pack_star/gondola
name = "Gondola"
desc = "Gondola is the silent walker. Having no hands he embodies the Taoist principle of wu-wei (non-action) while his smiling facial expression shows his utter and complete acceptance of the world as it is. Its hide is extremely valuable."
rules = "Taunt. Holy."
icon_state = "gondola"
mana_cost = 6
attack = 0
health = 9
faction = "Unique"
rarity = "Epic"
card_type = "Unit"
/obj/item/tcg_card/special/gondola
datum_type = /datum/tcg_card/pack_star/gondola
/datum/tcg_card/pack_star/phazon
name = "Phazon"
desc = "The pinnacle of scientific research and pride of Nanotrasen, Phazon uses cutting edge bluespace technology and expensive materials."
rules = "Whenever this unit takes damage, flip a coin. If heads, take no damage. If tails, take double damage."
icon_state = "phazon"
mana_cost = 8
attack = 5
health = 7
faction = "Unique"
rarity = "Rare"
card_type = "Unit"
/obj/item/tcg_card/special/phazon
datum_type = /datum/tcg_card/pack_star/phazon
//Ultimate Exodia cards. I really, really doubt that someone will ever find them.
/datum/tcg_card/pack_star/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."
icon_state = "exodia_singularity"
mana_cost = 8
faction = "Exodia"
rarity = "Legendary"
card_type = "Spell"
/datum/tcg_card/pack_star/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."
icon_state = "exodia_tesla"
mana_cost = 8
faction = "Exodia"
rarity = "Legendary"
card_type = "Spell"
/datum/tcg_card/pack_star/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 ."
icon_state = "exodia_narie"
mana_cost = 8
faction = "Exodia"
rarity = "Legendary"
card_type = "Spell"
/datum/tcg_card/pack_star/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."
icon_state = "exodia_ratvar"
mana_cost = 8
faction = "Exodia"
rarity = "Legendary"
card_type = "Spell"
/datum/tcg_card/pack_star/exodia
name = "Eldritch Horror"
desc = "The Eldritch Horror is a long forgotten demon that was the beginning of everything. Afterwards, his creations revolted and left him abadoned in endless void."
rules = "This card doesn't leave field. If all other 4 Exodia cards are on the field(Singularity, Energy Orb, Nar-Sie and Ratvar), the game is won."
icon_state = "exodia_eldritch"
mana_cost = 8
faction = "Exodia"
rarity = "Legendary"
card_type = "Spell"
/obj/item/tcg_card/special/exodia_singulo
datum_type = /datum/tcg_card/pack_star/exodia_singulo
/obj/item/tcg_card/special/exodia_tesla
datum_type = /datum/tcg_card/pack_star/exodia_tesla
/obj/item/tcg_card/special/exodia_narie
datum_type = /datum/tcg_card/pack_star/exodia_narie
/obj/item/tcg_card/special/exodia_ratvar
datum_type = /datum/tcg_card/pack_star/exodia_ratvar
/obj/item/tcg_card/special/exodia
datum_type = /datum/tcg_card/pack_star/exodia