Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.
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
41 changes: 41 additions & 0 deletions code/game/objects/items/mantis.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
/obj/item/mantis/blade
name = "mantis blade"
desc = "Powerful inbuilt blade, hidden just beneath the skin. Singular brain signals directly link to this bad boy, allowing it to spring into action in just seconds."
icon_state = "mantis"
lefthand_file = 'icons/mob/inhands/weapons/swords_lefthand.dmi'
righthand_file = 'icons/mob/inhands/weapons/swords_righthand.dmi'
hitsound = 'sound/weapons/bladeslice.ogg'
flags_1 = CONDUCT_1
force = 20
w_class = WEIGHT_CLASS_NORMAL
attack_verb = list("attacked", "slashed", "stabbed", "sliced", "torn", "lacerated", "ripped", "diced", "cut")

/obj/item/mantis/blade/equipped(mob/user, slot, initial)
. = ..()
if(slot != ITEM_SLOT_HANDS)
return
var/side = user.get_held_index_of_item(src)

if(side == LEFT_HANDS)
transform = null
else
transform = matrix(-1, 0, 0, 0, 1, 0)

/obj/item/mantis/blade/attack(mob/living/M, mob/living/user, secondattack = FALSE)
. = ..()
var/obj/item/mantis/blade/secondsword = user.get_inactive_held_item()
if(istype(secondsword, /obj/item/mantis/blade) && !secondattack)
sleep(2)
secondsword.attack(M, user, TRUE)
return

/obj/item/mantis/blade/syndicate
name = "G.O.R.L.E.X. mantis blade"
icon_state = "syndie_mantis"
force = 20
block_chance = 20

/obj/item/mantis/blade/NT
name = "H.E.P.H.A.E.S.T.U.S. mantis blade"
icon_state = "mantis"
force = 18
7 changes: 7 additions & 0 deletions code/game/objects/items/storage/briefcase.dm
Original file line number Diff line number Diff line change
Expand Up @@ -47,3 +47,10 @@
new /obj/item/ammo_box/magazine/sniper_rounds/soporific(src)
new /obj/item/suppressor/specialoffer(src)

/obj/item/storage/briefcase/syndie_mantis
desc = "A sleek briefcase. It has the letters G.O.R.L.E.X. on it"

/obj/item/storage/briefcase/syndie_mantis/PopulateContents()
..()
new /obj/item/autosurgeon/organ/syndicate/syndie_mantis(src)
new /obj/item/autosurgeon/organ/syndicate/syndie_mantis/l(src)
10 changes: 10 additions & 0 deletions code/modules/surgery/organs/augments_arms.dm
Original file line number Diff line number Diff line change
Expand Up @@ -233,3 +233,13 @@
name = "surgical toolset implant"
desc = "A set of surgical tools hidden behind a concealed panel on the user's arm."
contents = newlist(/obj/item/retractor/augment, /obj/item/hemostat/augment, /obj/item/cautery/augment, /obj/item/surgicaldrill/augment, /obj/item/scalpel/augment, /obj/item/circular_saw/augment, /obj/item/surgical_drapes)

/obj/item/organ/cyberimp/arm/syndie_mantis
name = "G.O.R.L.E.X. mantis blade implants"
desc = "Modernized mantis blade designed coined by Tiger operatives, much sharper blade with energy actuators makes it a much deadlier weapon."
contents = newlist(/obj/item/mantis/blade/syndicate)
syndicate_implant = TRUE

/obj/item/organ/cyberimp/arm/syndie_mantis/l
zone = BODY_ZONE_L_ARM
syndicate_implant = TRUE
9 changes: 8 additions & 1 deletion code/modules/surgery/organs/autosurgeon.dm
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,13 @@

/obj/item/autosurgeon/reviver
starting_organ = /obj/item/organ/cyberimp/chest/reviver

/obj/item/autosurgeon/medibeam
starting_organ = /obj/item/organ/cyberimp/arm/medibeam


/obj/item/autosurgeon/organ/syndicate/syndie_mantis
starting_organ = /obj/item/organ/cyberimp/arm/syndie_mantis

/obj/item/autosurgeon/organ/syndicate/syndie_mantis/l
starting_organ = /obj/item/organ/cyberimp/arm/syndie_mantis/l
8 changes: 7 additions & 1 deletion code/modules/uplink/uplink_items.dm
Original file line number Diff line number Diff line change
Expand Up @@ -1698,7 +1698,13 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item))
item = /obj/item/autosurgeon/xray_eyes
cost = 10
surplus = 0
include_modes = list(/datum/game_mode/nuclear)

/datum/uplink_item/implants/mantis_kit
name = "G.O.R.L.E.X.. Mantis Blades Kit"
desc = "Comes with 2 G.O.R.L.E.X. Mantis blades. All packaged with autosurgeons."
item = /obj/item/storage/briefcase/syndie_mantis
cost = 16
surplus = 0

//Race-specific items
/datum/uplink_item/race_restricted
Expand Down
Binary file modified icons/mob/inhands/weapons/swords_lefthand.dmi
Binary file not shown.
Binary file modified icons/mob/inhands/weapons/swords_righthand.dmi
Binary file not shown.
Binary file modified icons/obj/items_and_weapons.dmi
Binary file not shown.
1 change: 1 addition & 0 deletions yogstation.dme
Original file line number Diff line number Diff line change
Expand Up @@ -936,6 +936,7 @@
#include "code\game\objects\items\inducer.dm"
#include "code\game\objects\items\kitchen.dm"
#include "code\game\objects\items\latexballoon.dm"
#include "code\game\objects\items\mantis.dm"
#include "code\game\objects\items\manuals.dm"
#include "code\game\objects\items\miscellaneous.dm"
#include "code\game\objects\items\mop.dm"
Expand Down
11 changes: 9 additions & 2 deletions yogstation/code/modules/uplink/uplink_item.dm
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
var/list/exclude_objectives = list() //objectives to disallow the buyer from buying this item
var/surplus_nullcrates

/datum/uplink_item/New()
/datum/uplink_item/New()
. = ..()
if(isnull(surplus_nullcrates))
surplus_nullcrates = surplus
Expand Down Expand Up @@ -70,7 +70,7 @@
cost = 5
surplus = 0
exclude_modes = list(/datum/game_mode/nuclear)

/datum/uplink_item/device_tools/arm/nuke
cost = 15
exclude_modes = list()
Expand Down Expand Up @@ -118,6 +118,13 @@
surplus = 20
restricted_roles = list("Assistant")

/datum/uplink_item/implants/mantis_kit
name = "G.O.R.L.E.X. Mantis Blades Kit"
desc = "Comes with 2 G.O.R.L.E.X. Mantis blades. All packaged with autosurgeons."
item = /obj/item/storage/briefcase/syndie_mantis
cost = 18
surplus = 0

/datum/uplink_item/badass/frying_pan
name = "Bananium Plated Frying Pan"
desc = "A frying pan imbued with ancient powers."
Expand Down