Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MIRROR] [MIRROR] New Traitor mech: Justice. [MDB IGNORE] #817

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion code/__DEFINES/exosuit_fab.dm
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,12 @@
#define EXOSUIT_MODULE_MARAUDER (1<<10)
/// Module is compatible with Paddy models
#define EXOSUIT_MODULE_PADDY (1<<11)
/// Module is compatible with Justice models
#define EXOSUIT_MODULE_JUSTICE (1<<12)

/// Module is compatible with "Working" Exosuit models - Ripley and Clarke
#define EXOSUIT_MODULE_WORKING (EXOSUIT_MODULE_RIPLEY | EXOSUIT_MODULE_CLARKE)
/// Module is compatible with "Combat" Exosuit models - Gygax, H.O.N.K, Durand and Phazon, or any Exosuit with an empty Concealed Weapon Bay
#define EXOSUIT_MODULE_COMBAT (EXOSUIT_MODULE_GYGAX | EXOSUIT_MODULE_HONK | EXOSUIT_MODULE_DURAND | EXOSUIT_MODULE_PHAZON | EXOSUIT_MODULE_SAVANNAH | EXOSUIT_MODULE_RETICENCE | EXOSUIT_MODULE_MARAUDER | EXOSUIT_MODULE_PADDY | EXOSUIT_MODULE_CONCEALED_WEP_BAY)
#define EXOSUIT_MODULE_COMBAT (EXOSUIT_MODULE_GYGAX | EXOSUIT_MODULE_HONK | EXOSUIT_MODULE_DURAND | EXOSUIT_MODULE_PHAZON | EXOSUIT_MODULE_SAVANNAH | EXOSUIT_MODULE_RETICENCE | EXOSUIT_MODULE_MARAUDER | EXOSUIT_MODULE_PADDY | EXOSUIT_MODULE_JUSTICE | EXOSUIT_MODULE_CONCEALED_WEP_BAY)
/// Module is compatible with "Medical" Exosuit modelsm - Odysseus
#define EXOSUIT_MODULE_MEDICAL EXOSUIT_MODULE_ODYSSEUS
1 change: 1 addition & 0 deletions code/__DEFINES/research/research_categories.dm
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,7 @@
#define RND_CATEGORY_MECHFAB_PHAZON "/Phazon"
#define RND_CATEGORY_MECHFAB_CLARKE "/Clarke"
#define RND_CATEGORY_MECHFAB_SAVANNAH_IVANOV "/Savannah-Ivanov"
#define RND_CATEGORY_MECHFAB_JUSTICE "/Justice"
#define RND_SUBCATEGORY_MECHFAB_CHASSIS "/Chassis"
#define RND_SUBCATEGORY_MECHFAB_SUPPORTED_EQUIPMENT "/Supported Equipment"
#define RND_SUBCATEGORY_MECHFAB_CONTROL_INTERFACES "/Control Interfaces"
Expand Down
26 changes: 26 additions & 0 deletions code/game/objects/effects/temporary_visuals/miscellaneous.dm
Original file line number Diff line number Diff line change
Expand Up @@ -710,3 +710,29 @@
flags = ANIMATION_RELATIVE,
)
return ..()

/obj/effect/temp_visual/mech_sparks
name = "mech sparks"
icon_state = "mech_sparks"
duration = 0.4 SECONDS

/obj/effect/temp_visual/mech_sparks/Initialize(mapload, set_color)
. = ..()
pixel_x = rand(-16, 16)
pixel_y = rand(-8, 8)

/obj/effect/temp_visual/mech_attack_aoe_charge
name = "mech attack aoe charge"
icon = 'icons/effects/96x96.dmi'
icon_state = "mech_attack_aoe_charge"
duration = 1 SECONDS
pixel_x = -32
pixel_y = -32

/obj/effect/temp_visual/mech_attack_aoe_attack
name = "mech attack aoe attack"
icon = 'icons/effects/96x96.dmi'
icon_state = "mech_attack_aoe_attack"
duration = 0.5 SECONDS
pixel_x = -32
pixel_y = -32
98 changes: 98 additions & 0 deletions code/modules/research/designs/mechfabricator_designs.dm
Original file line number Diff line number Diff line change
Expand Up @@ -910,6 +910,104 @@
RND_CATEGORY_MECHFAB_SAVANNAH_IVANOV + RND_SUBCATEGORY_MECHFAB_CHASSIS
)

//Justice (emaged only)
/datum/design/justice_chassis
name = "Exosuit Chassis (\"Justice\")"
id = "justice_chassis"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/chassis/justice
materials = list(/datum/material/iron=SHEET_MATERIAL_AMOUNT*20)
construction_time = 10 SECONDS
category = list(
RND_CATEGORY_MECHFAB_JUSTICE + RND_SUBCATEGORY_MECHFAB_CHASSIS
)

/datum/design/justice_torso
name = "Exosuit Torso (\"Justice\")"
id = "justice_torso"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/justice_torso
materials = list(
/datum/material/iron = SHEET_MATERIAL_AMOUNT * 50,
/datum/material/silver = SHEET_MATERIAL_AMOUNT * 5,
)
construction_time = 30 SECONDS
category = list(
RND_CATEGORY_MECHFAB_JUSTICE + RND_SUBCATEGORY_MECHFAB_CHASSIS
)

/datum/design/justice_left_arm
name = "Exosuit Left Arm (\"Justice\")"
id = "justice_left_arm"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/justice_left_arm
materials = list(
/datum/material/iron = SHEET_MATERIAL_AMOUNT * 5,
/datum/material/silver = SHEET_MATERIAL_AMOUNT * 2,
)
construction_time = 10 SECONDS
category = list(
RND_CATEGORY_MECHFAB_JUSTICE + RND_SUBCATEGORY_MECHFAB_CHASSIS
)

/datum/design/justice_right_arm
name = "Exosuit Right Arm (\"Justice\")"
id = "justice_right_arm"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/justice_right_arm
materials = list(
/datum/material/iron=SHEET_MATERIAL_AMOUNT*5,
/datum/material/silver=SHEET_MATERIAL_AMOUNT*2,
)
construction_time = 10 SECONDS
category = list(
RND_CATEGORY_MECHFAB_JUSTICE + RND_SUBCATEGORY_MECHFAB_CHASSIS
)

/datum/design/justice_left_leg
name = "Exosuit Left Leg (\"Justice\")"
id = "justice_left_leg"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/justice_left_leg
materials = list(
/datum/material/iron=SHEET_MATERIAL_AMOUNT*5,
/datum/material/titanium=SHEET_MATERIAL_AMOUNT*2,
)
construction_time = 10 SECONDS
category = list(
RND_CATEGORY_MECHFAB_JUSTICE + RND_SUBCATEGORY_MECHFAB_CHASSIS
)

/datum/design/justice_right_leg
name = "Exosuit Right Leg (\"Justice\")"
id = "justice_right_leg"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/justice_right_leg
materials = list(
/datum/material/iron=SHEET_MATERIAL_AMOUNT*5,
/datum/material/titanium=SHEET_MATERIAL_AMOUNT*2,
)
construction_time = 10 SECONDS
category = list(
RND_CATEGORY_MECHFAB_JUSTICE + RND_SUBCATEGORY_MECHFAB_CHASSIS
)

/datum/design/justice_armor
name = "Exosuit Armor (\"Justice\")"
id = "justice_armor"
build_type = MECHFAB
build_path = /obj/item/mecha_parts/part/justice_armor
materials = list(
/datum/material/silver=SHEET_MATERIAL_AMOUNT*10,
/datum/material/titanium=SHEET_MATERIAL_AMOUNT*10,
/datum/material/plastic=SHEET_MATERIAL_AMOUNT*5,
/datum/material/diamond=SHEET_MATERIAL_AMOUNT*1,
)
construction_time = 20 SECONDS
category = list(
RND_CATEGORY_MECHFAB_JUSTICE + RND_SUBCATEGORY_MECHFAB_CHASSIS
)

//Clarke
/datum/design/clarke_chassis
name = "Exosuit Chassis (\"Clarke\")"
Expand Down
2 changes: 2 additions & 0 deletions code/modules/research/techweb/_techweb_node.dm
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,8 @@
var/list/experiments_to_unlock = list()
/// Whether or not this node should show on the wiki
var/show_on_wiki = TRUE
/// Hidden Mech nodes unlocked when mech fabricator emaged.
var/illegal_mech_node = FALSE

/datum/techweb_node/error_node
id = "ERROR"
Expand Down
Loading
Loading