Vore fixes (#200)

* wagging tails!

* oh

* also these two runtime things

* some delta too

* maybesorta

* Moves vore stuff lower into modules

* Vore fixes ftw
This commit is contained in:
Poojawa
2017-02-05 05:11:42 -06:00
committed by GitHub
parent 3dd2e8b07b
commit aeeca195c7
32 changed files with 254 additions and 176 deletions
@@ -0,0 +1,124 @@
// BEGIN - DO NOT EDIT PROTOTYPE
/obj/item/weapon/storage/box/fluff
name = "Undefined Fluff Box"
desc = "This should have a description. Tell an admin."
storage_slots = 7
var/list/has_items = list()
/obj/item/weapon/storage/box/fluff/New()
storage_slots = has_items.len
allowed = list()
for(var/P in has_items)
allowed += P
new P(src)
..()
return
// END - DO NOT EDIT PROTOTYPE
/* TEMPLATE
// ckey:Character Name
/obj/item/weapon/storage/box/fluff/charactername
name = ""
desc = ""
has_items = list(
/obj/item/clothing/head/thing1,
/obj/item/clothing/shoes/thing2,
/obj/item/clothing/suit/thing3,
/obj/item/clothing/under/thing4)
*/
//POLARISTODO - These fail to compile since not all items are ported yet
// bwoincognito:Tasald Corlethian
/obj/item/weapon/storage/box/fluff/tasald
name = "Tasald's Kit"
desc = "A kit containing Talsald's equipment."
has_items = list(
/obj/item/clothing/suit/storage/det_suit/fluff/tasald,
/obj/item/clothing/suit/storage/det_suit/fluff/tas_coat,
/obj/item/clothing/under/det/fluff/tasald,
/obj/item/fluff/permit/tasald_corlethian,
/obj/item/weapon/gun/projectile/revolver/detective/fluff/tasald_corlethian,
/obj/item/weapon/implanter/loyalty)
// jemli:Cirra Mayhem
/obj/item/weapon/storage/box/fluff/cirra
name = "Instant Pirate Kit"
desc = "Just add Akula!"
has_items = list(
/obj/item/clothing/head/pirate,
/obj/item/clothing/glasses/eyepatch,
/obj/item/clothing/suit/pirate,
/obj/item/clothing/under/pirate)
// joey4298:Emoticon
/obj/item/weapon/storage/box/fluff/emoticon
name = "Emoticon's Mime Kit"
desc = "Specially packaged for the hungry catgirl mime with a taste for clown."
has_items = list(
/obj/item/device/fluff/id_kit_mime,
/obj/item/clothing/gloves/white,
/obj/item/clothing/head/beret,
/obj/item/weapon/reagent_containers/food/drinks/bottle/bottleofnothing,
/obj/item/clothing/shoes/black,
/*/obj/item/toy/crayon/mime*/) //Need to track down the code for crayons before adding this back in
//joanrisu:Joan Risu
/obj/item/weapon/storage/backpack/dufflebag/sec/fluff/joanrisu
name = "Joan's Workbag"
desc = "A duffle bag Joan uses to carry her work equipment."
slowdown = 0
New()
..()
new /obj/item/clothing/accessory/holster/hip(src)
new /obj/item/clothing/suit/storage/fluff/fedcoat/fedcapt(src)
new /obj/item/weapon/card/id/centcom/fluff/joanbadge(src)
new /obj/item/weapon/gun/energy/gun/fluff/dominator(src)
new /obj/item/clothing/suit/armor/det_suit(src)
new /obj/item/fluff/permit/joanrisu(src)
new /obj/item/clothing/accessory/storage/black_vest(src)
new /obj/item/weapon/sword/fluff/joanaria(src)
new /obj/item/weapon/flame/lighter/zippo/fluff/joan(src)
new /obj/item/clothing/under/rank/internalaffairs/fluff/joan(src)
//joanrisu:Katarina Eine
/obj/item/weapon/storage/backpack/dufflebag/sec/fluff/Katarina
name = "Katarina's Workbag"
desc = "A duffle bag Katarina uses to carry her tools."
slowdown = 0
New()
..()
new /obj/item/clothing/accessory/holster/hip(src)
new /obj/item/clothing/suit/storage/fluff/fedcoat(src)
new /obj/item/weapon/gun/energy/gun/fluff/dominator(src)
new /obj/item/clothing/suit/armor/det_suit(src)
new /obj/item/clothing/accessory/storage/black_vest(src)
new /obj/item/weapon/material/hatchet/tacknife/combatknife/fluff/katarina(src)
new /obj/item/weapon/material/hatchet/tacknife/combatknife/fluff/katarina(src)
new /obj/item/weapon/material/hatchet/tacknife/combatknife/fluff/katarina(src)
new /obj/item/weapon/material/hatchet/tacknife/combatknife/fluff/katarina(src)
new /obj/item/clothing/under/rank/internalaffairs/fluff/joan(src)
//Razerwing:Archer Maximus
/obj/item/weapon/storage/box/fluff/archermaximus
desc = "Personal Effects"
has_items = list(
/obj/item/fluff/permit/archermaximus,
/obj/item/weapon/gun/projectile/colt/fluff/archercolt)
// arokha:Aronai Kadigan
/obj/item/weapon/storage/backpack/dufflebag/emt/fluff/aro
name = "Aronai's Equipment"
desc = "A big dufflebag, containing the stuff Aronai likes to carry with him."
slowdown = 0 //HAX!
New()
..()
new /obj/item/clothing/head/helmet/space/fluff/aronai(src)
new /obj/item/clothing/suit/space/fluff/aronai(src)
new /obj/item/device/suit_cooling_unit(src)
new /obj/item/weapon/material/hatchet/tacknife/combatknife(src)
new /obj/item/weapon/card/id/centcom/fluff/aro(src)
new /obj/item/weapon/reagent_containers/hypospray/fluff/aronai(src)
@@ -0,0 +1,684 @@
/* TUTORIAL
"icon" is the file with the HUD/ground icon for the item
"icon_state" is the iconstate in this file for the item
"icon_override" is the file with the on-mob icons, can be the same file
"item_state" is the iconstate for the on-mob icons:
item_state_s is used for worn uniforms on mobs
item_state_r and item_state_l are for being held in each hand
some do not have a suffix, like gloves. plan accordingly, maybe add _mob?
"overlay_state" is the iconstate for ties/accessories, for some reason they don't
just use the item_state variable
If you don't have a special HUD/ground sprite, don't worry about it.
Just set both the icon_state and item_state to the same thing,
and it will use the top direction sprite (facing the viewer)
for your HUD/item sprite. This usually looks fine!
Advanced:
"item_state_slots" can replace "item_state", it is a list:
item_state_slots["slotname1"] = "item state for that slot"
item_state_slots["slotname2"] = "item state for that slot"
*/
/* TEMPLATE
//ckey:Character Name
/obj/item/clothing/type/fluff/charactername
name = ""
desc = ""
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "myicon"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "myicon"
*/
//benemuel:Yuuko Shimmerpond
/obj/item/clothing/under/fluff/sakura_hokkaido_kimono
name = "Sakura Kimono"
desc = "A pale-pink, nearly white, kimono with a red and gold obi. There is a embroidered design of cherry blossom flowers covering the kimono."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "sh_kimono"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "sh_kimono_mob"
//BeyondMyLife:Kilano Soryu
/obj/item/clothing/under/dress/fluff/kilano
name = "Bleached Dress"
desc = "It appears that this was once a captain's dress, it's blueish color has been turned white by bleach, only the gold markings remain to slightly signify what it once was."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "kilanodress"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "kilanodress_mob"
species_restricted = null
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
//BeyondMyLife:Kilano Soryu
/obj/item/clothing/gloves/fluff/kilano
name = "Bleached Gloves"
desc = "Some old captain's gloves, bleached white, almost unrecognizable from the color change besides the gold trim."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "kilanogloves"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "kilanogloves_mob"
species_restricted = null
//JoanRisu:Joan Risu
/obj/item/clothing/under/suit_jacket/female/fluff/asuna
name = "Joan's Historia Uniform"
desc = "A red and white outfit used by Joan during her explorer days. Looks almost like a red school uniform."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "joanasuna"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "joanasuna"
//Unknown. Please check records from the forums.
/obj/item/clothing/under/suit_jacket/female/fluff/miqote
name = "Miqo'te Seperates"
desc = "This two-part set of clothing is very popular on the planet Hydaelyn. While made of very robust materials, its usefulness as armor is negated by the exposed midriff."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "miqote"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "miqote"
//JoanRisu:Joan Risu
/obj/item/clothing/under/fluff/nightgown
name = "nightgown"
desc = "A seethrough nightgown. For those intimate nights with your significant other."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "joannightgown"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "joannightgown"
//Vorrarkul:Lucina Dakarim
/obj/item/clothing/under/dress/fluff/lucinadress
name = "Elegant Purple Dress"
desc = "An expertly tailored dress, made out of fine fabrics. The interwoven necklace appears to be made out of gold, with three complicated symbols engraved in the front."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "solara_dress"
icon_override = 'icons/mob/uniform.dmi'
item_state = "solara_dress"
//For general use
/obj/item/clothing/suit/armor/hos/fluff/brittrenchcoat
name = "Britania Trench Coat"
desc = "An armored trench coat from the Brittanian Empire. It looks so British."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "brittrenchcoat"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "brittrenchcoat"
//For general use
/obj/item/clothing/suit/armor/hos/nazi_greatcoat
name = "Greatcoat"
desc = "Perfect attire for kicking down the doors of suspected dissidents; this coat gives off an imposing look, while offering a luxuriously plush fur liner."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "greatcoat"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "greatcoat_mob"
//For general use
/obj/item/clothing/suit/storage/fluff/fedcoat
name = "Federation Uniform Jacket"
desc = "A uniform jacket from the United Federation. Starfleet still uses this uniform and there are variations of it. Set phasers to awesome."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "fedcoat"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "fedcoat"
blood_overlay_type = "coat"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
allowed = list(
/obj/item/weapon/tank/emergency_oxygen,
/obj/item/device/flashlight,
/obj/item/weapon/gun/energy,
/obj/item/weapon/gun/projectile,
/obj/item/ammo_magazine,
/obj/item/ammo_casing,
// /obj/item/weapon/storage/fancy/shotgun_ammo,
/obj/item/weapon/melee/baton,
/obj/item/weapon/handcuffs,
// /obj/item/device/detective_scanner,
/obj/item/device/taperecorder)
armor = list(melee = 50, bullet = 15, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0)
var/unbuttoned = 0
verb/toggle()
set name = "Toggle coat buttons"
set category = "Object"
set src in usr
if(!usr.canmove || usr.stat || usr.restrained())
return 0
switch(unbuttoned)
if(0)
icon_state = "[initial(icon_state)]_open"
item_state = "[initial(item_state)]_open"
unbuttoned = 1
usr << "You unbutton the coat."
if(1)
icon_state = "[initial(icon_state)]"
item_state = "[initial(item_state)]"
unbuttoned = 0
usr << "You button up the coat."
usr.update_inv_wear_suit()
//Variants
fedblue
name = "Federation Uniform Jacket"
desc = "A uniform jacket from the United Federation. Starfleet still uses this uniform and there are variations of it. Wearing this may make you feel all scientific."
icon_state = "fedblue"
item_state = "fedblue"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0)
fedeng
name = "Federation Uniform Jacket"
desc = "A uniform jacket from the United Federation. Starfleet still uses this uniform and there are variations of it.Wearing it may make you feel like checking a warp core, whatever that is."
icon_state = "fedeng"
item_state = "fedeng"
armor = list(melee = 0, bullet = 0, laser = 0,energy = 10, bomb = 0, bio = 30, rad = 35)
fedcapt
name = "Federation Uniform Jacket"
desc = "A uniform jacket from the United Federation. Starfleet still uses this uniform and there are variations of it. You feel like a commanding officer of Starfleet."
icon_state = "fedcapt"
item_state = "fedcapt"
armor = list(melee = 50, bullet = 5, laser = 15,energy = 10, bomb = 0, bio = 0, rad = 0)
/*POLARISTODO - Needs rework in update_icons as it doesn't use item_state
//For general use
/obj/item/clothing/glasses/welding/fluff/yellow
name = "Yellow Goggles"
desc = "A neat looking pair of goggles"
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "gogyellow"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "gogyellow"
/obj/item/clothing/glasses/welding/fluff/blue
name = "Blue Goggles"
desc = "A neat looking pair of goggles"
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "gogblue"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "gogblue"
*/
//wickedtemp:chakat tempest
/obj/item/clothing/glasses/hud/health/fluff/wickedtemphud
name = "Purple MedHUD"
desc = "A standard Medical HUD, only this one is colored purple with a violet lens."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "healthhud"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "healthhud"
//For general use
/obj/item/clothing/accessory/fluff/smilepin
name = "Smiley Pin"
desc = "A pin with a stupid grin on its face"
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "smilepin"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
overlay_state = "" //They don't have one
//For general use
/obj/item/clothing/accessory/fluff/heartpin
name = "Love Pin"
desc = "A cute heart pin."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "heartpin"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
overlay_state = "" //They don't have one
//john.wayne9392:Harmony Prechtl
/obj/item/clothing/suit/armor/captain/fluff/harmsuit
name = "Harmony's Captain Armor"
desc = "A modified Captain Armor suit for Harmony Prechtl."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "harmarmor"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "harmarmor"
//john.wayne9392:Harmony Prechtl
/obj/item/clothing/head/helmet/space/capspace/fluff/harmhelm
name = "Harmony's Captain Helmet"
desc = "A modified Captain helmet for Harmony Prechtl."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "harmspace"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "harmspace_mob"
//john.wayne9392:Harmony Prechtl
/obj/item/clothing/under/rank/captain/fluff/harmuniform
name = "Harmony's Captain uniform"
desc = "A customized Captain uniform for Harmony Prechtl, given to her as a gift by Central Command for her service."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "harmcaptain"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "harmcaptain"
//Variant
centcom
name = "\improper CentCom administrator's uniform"
desc = "It's a green jumpsuit with some gold markings denoting the rank of \"Administrator\"."
//john.wayne9392:Harmony Prechtl
/obj/item/clothing/head/centhat/fluff/harmhat
name = "Harmony's CentCom hat"
desc = "It's good to be queen."
// bwoincognito:Tasald Corlethian
/obj/item/clothing/under/det/fluff/tasald
name = "Tasald's outfit"
desc = "Tasald's outfit. Very green."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "tasaldsuit"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "tasaldsuit"
// bwoincognito:Tasald Corlethian
/obj/item/clothing/suit/storage/det_suit/fluff/tasald
name = "Tasald's Vest"
desc = "A fancy looking vest. You look like a smooth operating officer in this."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "tasvest"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "tasvest"
blood_overlay_type = "coat"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
// bwoincognito:Tasald Corlethian
/obj/item/clothing/suit/storage/det_suit/fluff/tas_coat
name = "Armored Colony coat"
desc = "Dark green and grey colored sleeveless long coat with two thick metal shoulder pads. has seen some wear and tear, with noticeable patches in the fabric, scratches on the shoulder pads, but with a clean patch on the left upper chest. It has a red NT marked on the right shoulder pad and red Security on the left. "
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "tasaldcoat"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "tasaldcoat_mob"
blood_overlay_type = "coat"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
//Event Costumes Below
/obj/item/clothing/head/helmet/fluff/freddy
name = "Animatronic Suit Helmet"
desc = "Votre toast, je peux vous le rendre."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "freddyhead"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "freddyhead_mob"
permeability_coefficient = 0.01
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
flags_inv = HIDEMASK|HIDEEARS
cold_protection = HEAD
siemens_coefficient = 0.9
//Bonnie Head
bonnie
desc = "Children's entertainer."
icon_state = "bonniehead"
item_state = "bonniehead_mob"
//Foxy Head
foxy
desc = "I guess he doesn't like being watched."
icon_state = "foxyhead"
item_state = "foxyhead_mob"
//Chica Head
chica
desc = "<b><font color=red>LET'S EAT!</font></b>"
icon_state = "chicahead"
item_state = "chicahead_mob"
//Anamatronic Suits
/obj/item/clothing/suit/fluff/freddy
name = "Animatronic Suit"
desc = "Votre toast, je peux vous le rendre."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "freddysuit"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "freddysuit_mob"
gas_transfer_coefficient = 0.01
permeability_coefficient = 0.02
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank)
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT
cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS
siemens_coefficient = 0.9
//Bonnie Suit
bonnie
desc = "Children's entertainer."
icon_state = "bonniesuit"
item_state = "bonniesuit_mob"
//Foxy Suit
foxy
desc = "I guess he doesn't like being watched."
icon_state = "foxysuit"
item_state = "foxysuit_mob"
//Chica Suit
chica
desc = "<b><font color=red>LET'S EAT!</font></b>"
icon_state = "chicasuit"
item_state = "chicasuit_mob"
//End event costumes
//scree:Scree
/obj/item/clothing/head/helmet/space/void/engineering/fluff/screehelm
name = "Modified Tajara Helmet"
desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding. This one doesn't look like it was made for humans. Its been modified to include headlights."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "scree-helm"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "scree-helm_mob"
light_overlay = "helmet_light_dual"
species_restricted = null
mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0)
..()
if(H.ckey != "scree")
H << "<span class='warning'>Your face and whoever is meant for this helmet are too different.</span>"
return 0
else
return 1
//scree:Scree
/obj/item/clothing/suit/space/void/engineering/fluff/screespess
name = "Modified Winged Suit"
desc = "A special suit that protects against hazardous, low pressure environments. Has radiation shielding. This one doesn't look like it was made for humans. This one was made with a special personal shielding for someone's wings."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "scree-spess"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "scree-spess_mob"
species_restricted = null
mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0)
..()
if(H.ckey != "scree")
H << "<span class='warning'>The gloves only have three fingers, not to mention the accomidation for extra limbs.</span>"
return 0
else
return 1
//scree:Scree
/obj/item/clothing/under/fluff/screesuit
name = "Scree's feathers"
desc = "A mop of fluffy blue feathers, the honkmother only knows what kind of bird they originally came from."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "screesuit"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "screesuit"
mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0)
..()
if(H.ckey != "scree")
H << "<span class='warning'>Are you just going to tape them on or what? This isn't gonna work.</span>"
return 0
else
return 1
//HOS Hardsuit
/obj/item/clothing/suit/space/void/security/fluff/hos // ToDo: Rig version.
name = "\improper prototype voidsuit"
desc = "A customized security voidsuit made to match the Head of Security's obession with black. Has additional composite armor."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "rig-hos"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "rig-hos_mob"
//HOS Hardsuit Helmet
/obj/item/clothing/head/helmet/space/void/security/fluff/hos // ToDo: Rig version.
name = "\improper prototype voidsuit helmet"
desc = "A customized security voidsuit helmet customized to include the Head of Security's signature hat. Has additional composite armor."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "rig0-hos"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "rig0-hos_mob"
//adk09:Lethe
/obj/item/clothing/head/helmet/hos/fluff/lethe
name = "Lethe's Hat"
desc = " This is Lethe's Hat! A little tag attached inside reads: 'If found please return to Lethe! Or else!' It looks rather worn in. It also lacks armor."
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
icon = 'icons/obj/clothing/hats.dmi'
icon_state = "hoscap"
icon_override = 'icons/mob/head.dmi'
item_state = "hoscap"
/obj/item/weapon/storage/belt/utility/fluff/vulpine
name = "vulpine belt"
desc = "A tool-belt in Atmos colours."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "vulpine_belt"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "vulpine_belt_mob"
storage_slots = 9
New()
..()
new /obj/item/weapon/screwdriver(src)
new /obj/item/weapon/wrench(src)
new /obj/item/weapon/weldingtool(src)
new /obj/item/weapon/crowbar(src)
new /obj/item/weapon/wirecutters(src)
new /obj/item/device/multitool(src)
new /obj/item/stack/cable_coil(src, 30, "red")
new /obj/item/stack/cable_coil(src, 30, "green")
// molenar:Giliana Gamish
/obj/item/clothing/suit/storage/toggle/labcoat/fluff/molenar
name = "Gili Custom Labcoat"
desc = " Custom made, lengthened labcoat with water resistant, durable material. And a custom set of holes inserted for Deathclaw anatomy. A tag inside has 'G.G.' monogram on it"
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "molenar"
icon_open = "molenar_open"
icon_closed = "molenar"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "molenar"
//scree:Scree
/obj/item/clothing/head/fluff/pompom
name = "Pom-Pom"
desc = "A fluffy little thingus on a thin stalk, ideal for impersonating moogles and anglerfish. Kupomnomnom."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "pom"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "pom_mob"
w_class = 2.0
on = 0
brightness_on = 5
light_overlay = null
attack_self(mob/user)
if(!isturf(user.loc))
user << "You cannot turn the light on while in this [user.loc]"
return
switch(on)
if(0)
on = 1
user << "You light up your pom-pom."
icon_state = "pom-on"
item_state = "pom-on_mob"
if(1)
on = 0
user << "You dim your pom-pom."
icon_state = "pom"
item_state = "pom_mob"
update_light(user)
if(ishuman(user))
var/mob/living/carbon/human/H = user
if(H.head == src)
H.update_inv_head()
// arokha : Aronai Kadigan
/obj/item/clothing/head/helmet/space/fluff/aronai
name = "Aronai's Helmet"
desc = "This spacesuit helmet appears to be custom-made for someone with pointed ears and a muzzle. \
It is form-fitting enough that it's unlikely to fit anyone but the person it was intended for. \
'Aronai' is printed on the back of the helmet."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "arohelm"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "arohelm_mob"
light_overlay = "helmet_light_dual"
camera_networks = list(NETWORK_MEDICAL)
mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0)
..()
if(H.ckey != "arokha")
H << "<span class='warning'>You try to wear the helmet, but it doesn't fit.</span>"
return 0
else
return 1
/obj/item/clothing/suit/space/fluff/aronai
name = "Aronai's Spacesuit"
desc = "This spacesuit appears to be custom-made for someone with digitigrade legs and a tail. \
It is form-fitting enough that it's unlikely to fit anyone but the person it was intended for. \
'Aronai' is printed just above the spine on the back of the neckpiece. It has no space for an O2 tank. \
In fact, it's practically paper-thin. It doesn't seem to retain body heat at all."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "arosuit"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "arosuit_mob"
w_class = 4 //Oh but I can.
allowed = list(/obj/item/device/suit_cooling_unit) //Can't fit O2 tanks
mob_can_equip(var/mob/living/carbon/human/H, slot, disable_warning = 0)
..()
if(H.ckey != "arokha")
H << "<span class='warning'>You try to fit into the suit, to no avail.</span>"
return 0
else
return 1
//Viveret:Keturah
/obj/item/clothing/under/dress/maid/
name = "Maid Outfit"
desc = "A french maid outfit made ironically in Gaia's version of the far east."
//JoanRisu:Joan Risu
/obj/item/clothing/head/helmet/space/fluff/joan
name = "Joan's Combat Space Helmet"
desc = "A customized combat space helmet made for a certain squirrely Commissioned Officer. \
The top has the signature ears that are held up with a harder back covering. 'Joan' is engraved on the back.\
There are some indications that the helmet has seen combat."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "joanhelm"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "joanhelm_mob"
light_overlay = "helmet_light"
//JoanRisu:Joan Risu
/obj/item/clothing/suit/space/fluff/joan
name = "Joan's Combat Spacesuit"
desc = "A customized combat spacesuit made for a certain squirrely Commissioned Officer, tail slot included. \
On the right shoulder, the United Federation's Emblem sits proudly. On the left, there are faded indications \
that there were different ranks painted on and off. On the collar where the suit is softer is a rectangular \
name-tag with the name 'Joan' on it. There are indications that the suit has seen combat."
icon = 'icons/vore/custom_clothes_vr.dmi'
icon_state = "joansuit"
icon_override = 'icons/vore/custom_clothes_vr.dmi'
item_state = "joansuit_mob"
/obj/item/clothing/under/rank/internalaffairs/fluff/joan
desc = "The plain, professional attire of a Federation Law Enforcement Detective. The collar is <i>immaculately</i> starched."
name = "Federation Dress Shirt"
icon_state = "internalaffairs"
item_state = "ba_suit"
worn_state = "internalaffairs"
rolled_sleeves = 0
starting_accessories = list(/obj/item/clothing/accessory/black)
@@ -0,0 +1,472 @@
/* TUTORIAL
"icon" is the file with the HUD/ground icon for the item
"icon_state" is the iconstate in this file for the item
"icon_override" is the file with the on-mob icons, can be the same file
"item_state" is the iconstate for the on-mob icons:
item_state_s is used for worn uniforms on mobs
item_state_r and item_state_l are for being held in each hand
"item_state_slots" can replace "item_state", it is a list:
item_state_slots["slotname1"] = "item state for that slot"
item_state_slots["slotname2"] = "item state for that slot"
on guns, in particular:
item_state being null makes it look for exactly the icon_state in the on-mob file,
including any 0,75,etc appended from the energy bar setting
item_state being present prevents different mode sprites, sadly, but you may
be able to override this on the gun itself with a proc
*/
/* TEMPLATE
//ckey:Character Name
/obj/item/weapon/gun/type/fluff/charactername
name = ""
desc = ""
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "myicon"
icon_override = 'icons/vore/custom_guns_vr.dmi'
item_state = "myicon"
*/
//////////////////// Projectile Weapons ////////////////////
// For general use
/obj/item/weapon/gun/projectile/automatic/battlerifle
name = "\improper BR55 Service Rifle"
desc = "You had your chance to be afraid before you joined my beloved Corps! But, to guide you back to the true path, I brought this motivational device! Uses unique 9.5x40mm rounds."
icon = 'icons/obj/gun_vr.dmi'
icon_state = "battlerifle"
icon_override = 'icons/obj/gun_vr.dmi'
item_state = "battlerifle"
item_icons = null
w_class = 4
recoil = 2 // The battlerifle was known for its nasty recoil.
max_shells = 36
caliber = "9.5x40mm"
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 2)
ammo_type = /obj/item/ammo_casing/a95mm
magazine_type = /obj/item/ammo_magazine/battlerifle
allowed_magazines = list(/obj/item/ammo_magazine/battlerifle)
fire_sound = 'sound/weapons/battlerifle.ogg'
load_method = MAGAZINE
slot_flags = SLOT_BACK
//requires_two_hands = 1
one_handed_penalty = 4 // The weapon itself is heavy
// For general use
/obj/item/weapon/gun/projectile/shotgun/pump/unsc
name = "\improper M45E Tactical Shotgun"
desc = "All you greenhorns who wanted to see Xenomorphs up close... this is your lucky day."
icon = 'icons/obj/gun_vr.dmi'
icon_state = "haloshotgun"
icon_override = 'icons/obj/gun_vr.dmi'
item_state = "haloshotgun"
item_icons = null
ammo_type = /obj/item/ammo_casing/shotgun
max_shells = 12
// jertheace : Jeremiah 'Ace' Acacius
/obj/item/weapon/gun/projectile/shotgun/pump/unsc/fluff/ace
name = "Ace's M45D Tactical Shotgun" // D-model holds half as many shells as the normal version so as not to be OP as shit. Better than shotgun, worse than combat shotgun.
desc = "Owned by the respected (or feared?) veteran Captain of VORE Station. Inscribed on the barrel are the words \"Speak softly, and carry a big stick.\" It has a folding stock so it can fit into bags."
w_class = 3 // Because collapsable stock so it fits in backpacks.
ammo_type = /obj/item/ammo_casing/shotgun/stunshell
max_shells = 6
// bwoincognito:Tasald Corlethian
/obj/item/weapon/gun/projectile/revolver/detective/fluff/tasald_corlethian
name = "Big Iron revolver"
desc = "A .38 revolver for veteran rangers on the planet Orta. The right side of the handle has a logo for Quarion industries, and the left is the Rangers. The primary ammo for this gun is .38 rubber. According to the CentCom Chief of Security, this revolver was more controversial than it needed to be."
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "tasaldrevolver"
item_state = "revolver"
fire_sound = 'sound/weapons/pistol.ogg'
ammo_type = /obj/item/ammo_casing/c38r
var/recentpump = 0
var/cocksound = 'sound/weapons/revolvercock.ogg'
consume_next_projectile()
if(chambered)
return chambered.BB
usr << "<span class='warning'>It's a single action revolver, pull the hammer back!</span>"
return null
attack_self(mob/living/user as mob)
if(world.time >= recentpump + 10)
pump(user)
recentpump = world.time
proc/pump(mob/M as mob)
playsound(M, cocksound, 60, 1)
if(chambered)//We have a shell in the chamber
chambered.loc = get_turf(src)//Eject casing
chambered = null
if(loaded.len)
var/obj/item/ammo_casing/AC = loaded[1] //load next casing.
loaded -= AC //Remove casing from loaded list.
chambered = AC
update_icon()
// wankersonofjerkin : Ryan Winz
/obj/item/weapon/gun/projectile/revolver/fluff/ryan_winz_revolver
name = "Ryan's 'Devilgun'"
desc = "You notice the serial number on the revolver is 666. The word 'Sin' is engraved on the blood-red rosewood grip. Uses .357 rounds."
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "ryan_winz"
item_state = "revolver"
/obj/item/weapon/gun/projectile/revolver/fluff/ryan_winz_revolver/redemption
name = "Ryan's 'Redeemer'"
desc = "You notice the serial number on the revolver is 667. The word 'Redemption' is engraved on dark rosewood grip. Uses .357 rounds."
// sasoperative : Joseph Skinner
/obj/item/weapon/gun/projectile/revolver/shotgun/fluff/sasoperative
name = "\"The Jury\""
desc = "A customized variant of the \"The Judge\" revolver sold by Cybersun Industries, built specifically for Joseph Skinner. Uses 12g shells."
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "jury"
item_state = "gun"
accuracy = 0 // Because I know you're not an idiot who needs to be nerfed. -Ace
ammo_type = /obj/item/ammo_casing/shotgun/beanbag
// For general use
/obj/item/weapon/gun/projectile/automatic/stg
name = "\improper Sturmgewehr"
desc = "An STG-560 built by RauMauser. Experience the terror of the Siegfried line, redone for the 26th century! The Kaiser would be proud. Uses unique 7.92x33mm Kurz rounds."
icon = 'icons/obj/gun_vr.dmi'
icon_state = "stg60"
item_state = "arifle"
w_class = 4
max_shells = 30
caliber = "kurz"
origin_tech = list(TECH_COMBAT = 4, TECH_MATERIAL = 2, TECH_ILLEGAL = 6)
magazine_type = /obj/item/ammo_magazine/stg
allowed_magazines = list(/obj/item/ammo_magazine/stg)
load_method = MAGAZINE
/obj/item/weapon/gun/projectile/automatic/stg/update_icon(var/ignore_inhands)
..()
icon_state = (ammo_magazine)? "stg60" : "stg60-empty"
item_state = (ammo_magazine)? "arifle" : "arifle-empty"
if(!ignore_inhands) update_held_icon()
// For general use
/obj/item/weapon/gun/projectile/automatic/m14/fluff/gallian
name = "\improper Gallian 4 Rifle"
desc = "The ever reliable Gallian 4 Rifle. Produced by the National Armory on the Planet of Gaia located in Gallia, the Gallian 4 Rifle offers high accuracy and is widely used in the United Federation's Military. Uses 7.62mm rounds."
// For general use
/obj/item/weapon/gun/projectile/shotgun/pump/rifle/zmkar
name = "\improper ZM Kar 1"
desc = "A reproduction of an old ZM Kar 1 Rifle from the Autocratic East Europan Imperial Alliance of Gaia. Popular among imperials and collectors within the Federation and its allies. Uses 7.62mm rounds."
// For general use
/obj/item/weapon/gun/projectile/shotgun/pump/rifle/wicked
name = "Wicked Butterfly ZM Kar S1"
desc = "A customized bolt-action sniper rifle that was carried by some of the most revered snipers in the Federation. The stock has a small butterfly engraved on it. Uses 7.62mm rounds."
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "wickedbutterfly"
icon_override = 'icons/obj/gun_vr.dmi'
item_state = "SVD"
item_icons = null
recoil = 2 //extra kickback
accuracy = -1
scoped_accuracy = 2
load_method = SINGLE_CASING
verb/scope()
set category = "Object"
set name = "Use Scope"
set popup_menu = 1
toggle_scope(2.0)
// For general use
/obj/item/weapon/gun/projectile/automatic/pdw // Vorestation SMG because the WT550 is ugly and bad.
name = "personal defense weapon"
desc = "The X-9MM is a select-fire personal defense weapon designed in-house by Xing Private Security. It was made to compete with the WT550 Saber, but hasn't yet caught on in popularity outside of the Virgo-Erigone system. Uses 9mm rounds."
icon = 'icons/obj/gun_vr.dmi'
icon_state = "pdw"
item_state = "c20r" // Placeholder
w_class = 3
caliber = "9mm"
origin_tech = list(TECH_COMBAT = 5, TECH_MATERIAL = 2)
slot_flags = SLOT_BELT
load_method = MAGAZINE
magazine_type = /obj/item/ammo_magazine/mc9mml
allowed_magazines = list(/obj/item/ammo_magazine/mc9mm, /obj/item/ammo_magazine/mc9mml)
firemodes = list(
list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null),
list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=6, burst_accuracy=list(0,-1,-2), dispersion=list(0.0, 0.6, 0.6))
)
/obj/item/weapon/gun/projectile/automatic/pdw/update_icon(var/ignore_inhands)
..()
if(istype(ammo_magazine,/obj/item/ammo_magazine/mc9mm))
icon_state = "pdw-short"
else
icon_state = (ammo_magazine)? "pdw" : "pdw-empty"
if(!ignore_inhands) update_held_icon()
//Currently, the only problem I have now is that this weapon's item_state isn't working.
/obj/item/weapon/gun/projectile/automatic/fluff/crestrose
name = "Crescent Rose"
desc = "Can you match my resolve? If so then you will succeed. I believe that the human spirit is indomitable. Keep Moving Forward. Uses 5.56mm rounds."
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "crestrose_fold"
icon_override = 'icons/vore/custom_guns_vr.dmi'
item_state = "crestrose_fold_mob"
w_class = 4
origin_tech = list(TECH_COMBAT = 7, TECH_MATERIAL = 4)
slot_flags = null
fire_sound = 'sound/weapons/Gunshot_light.ogg'
load_method = MAGAZINE
force = 3
recoil = 2
var/on = 0
auto_eject = 1
auto_eject_sound = 'sound/weapons/smg_empty_alarm.ogg'
hitsound = null
caliber = "a556"
magazine_type = /obj/item/ammo_magazine/a556
allowed_magazines = list(/obj/item/ammo_magazine/a556)
/obj/item/weapon/gun/projectile/automatic/fluff/crestrose/attack_self(mob/user as mob)
on = !on
if(on)
user.visible_message("<span class='warning'>With a press of a button, [user]'s gun turns into a deadly scythe.</span>",\
"<span class='warning'>You extend The Rose's thorns.</span>",\
"You hear an ominous click.")
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "crestrose"
icon_override = 'icons/vore/custom_guns_vr.dmi'
item_state = "crestrose_mob"
w_class = 4
force = 15//Obscenely robust
attack_verb = list("slashed", "cut", "drives")
hitsound = 'sound/weapons/bladeslice.ogg'
else
user.visible_message("<span class='notice'>\The [user] folds the weapon back up into a gun.</span>",\
"<span class='notice'>You fold up the weapon.</span>",\
"You hear a click.")
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "crestrose_fold"
icon_override = 'icons/vore/custom_guns_vr.dmi'
item_state = "crestrose_fold_mob"
w_class = 3
force = 3//Not so obscenely robust
attack_verb = list("hit", "melee'd")
hitsound = null
update_icon()
/obj/item/weapon/gun/projectile/automatic/fluff/crestrose/handle_shield(mob/user, var/damage, atom/damage_source = null, mob/attacker = null, var/def_zone = null, var/attack_text = "the attack")
if(default_parry_check(user, attacker, damage_source) && prob(50))
user.visible_message("<span class='danger'>\The [user] parries [attack_text] with \the [src]!</span>")
playsound(user.loc, 'sound/weapons/punchmiss.ogg', 50, 1)
return 1
return 0
// molenar:Kari Akiren
/obj/item/weapon/gun/projectile/shotgun/pump/rifle/fluff/kari_akiren
name = "clockwork rifle"
desc = "Brass, copper, and lots of gears. Well lubricated for fluid movement as each round is loaded, locked, and fired. Just like clockwork."
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "clockworkrifle"
icon_override = 'icons/vore/custom_guns_vr.dmi'
item_state = "clockworkrifle"
item_icons = null
//Razerwing:Archer Maximus
/obj/item/weapon/gun/projectile/colt/fluff/archercolt
name = "\improper MEUSOC .45"
desc = "Some serious drywall work, coming up!"
//////////////////// Energy Weapons ////////////////////
//arokha:Aronai Kadigan
/obj/item/weapon/gun/energy/gun/fluff/aro
name = "\improper KIN-H21"
desc = "The Kitsuhana Heavy Industries standard Imperial Navy energy sidearm, commonly called the KIN21. This one appears to have been modified to have additional features at the cost of battery life."
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "kinh21stun100"
item_state = "laser"
modifystate = "kinh21stun"
projectile_type = /obj/item/projectile/beam/stun/kin21
max_shots = 8
charge_cost = 125
charge_meter = 1
firemodes = list(
list(mode_name="stun", projectile_type=/obj/item/projectile/beam/stun/kin21, modifystate="kinh21stun", fire_sound='sound/weapons/Taser.ogg'),
list(mode_name="lethal", projectile_type=/obj/item/projectile/beam, modifystate="kinh21kill", fire_sound='sound/weapons/blaster_pistol.ogg'),
list(mode_name="shrink", projectile_type=/obj/item/projectile/beam/shrinklaser, modifystate="kinh21shrink", fire_sound='sound/weapons/wave.ogg'),
list(mode_name="grow", projectile_type=/obj/item/projectile/beam/growlaser, modifystate="kinh21grow", fire_sound='sound/weapons/pulse3.ogg'),
)
// -------------- Dominator -------------
/obj/item/weapon/gun/energy/gun/fluff/dominator
name = "\improper MWPSB Dominator"
desc = "A MWPSB's Dominator from the Federation. Like the basic Energy Gun, this gun has two settings. It is used by the United Federation Public Safety Bureau's Criminal Investigation Division."
icon = 'icons/vore/custom_guns_vr.dmi'
icon_state = "dominatorstun100"
icon_override = 'icons/vore/custom_guns_vr.dmi'
item_state = null
item_icons = null
fire_sound = 'sound/weapons/Taser.ogg'
projectile_type = /obj/item/projectile/beam/stun
modifystate = "dominatorstun"
firemodes = list(
list(mode_name="stun", charge_cost=100,projectile_type=/obj/item/projectile/beam/stun, modifystate="dominatorstun", fire_sound='sound/weapons/Taser.ogg'),
list(mode_name="lethal", charge_cost=125,projectile_type=/obj/item/projectile/beam/dominator, modifystate="dominatorkill", fire_sound='sound/weapons/gauss_shoot.ogg'),
)
// ------------ Energy Luger ------------
/obj/item/weapon/gun/energy/gun/eluger
name = "energy Luger"
desc = "The finest sidearm produced by RauMauser, this pistol can punch a hole through inch thick steel plating. This ain't your great-grand-daddy's Luger! Can switch between stun and kill."
icon = 'icons/obj/gun_vr.dmi'
icon_state = "elugerstun100"
item_state = "gun"
charge_cost = 100 //How much energy is needed to fire.
projectile_type = /obj/item/projectile/beam/stun
modifystate = "elugerstun"
fire_sound = 'sound/weapons/Taser.ogg'
firemodes = list(
list(mode_name="stun", charge_cost=100,projectile_type=/obj/item/projectile/beam/stun, modifystate="elugerstun", fire_sound='sound/weapons/Taser.ogg'),
list(mode_name="lethal", charge_cost=200,projectile_type=/obj/item/projectile/beam/eluger, modifystate="elugerkill", fire_sound='sound/weapons/eluger.ogg'),
)
//////////////////// Custom Ammo ////////////////////
//---------------- Beams ----------------
/obj/item/projectile/beam/eluger
name = "laser beam"
icon_state = "emitter"
/obj/item/projectile/beam/dominator
name = "dominator lethal beam"
icon_state = "xray"
muzzle_type = /obj/effect/projectile/xray/muzzle
tracer_type = /obj/effect/projectile/xray/tracer
impact_type = /obj/effect/projectile/xray/impact
/obj/item/projectile/beam/stun/kin21
name = "kinh21 stun beam"
icon_state = "omnilaser"
muzzle_type = /obj/effect/projectile/laser_omni/muzzle
tracer_type = /obj/effect/projectile/laser_omni/tracer
impact_type = /obj/effect/projectile/laser_omni/impact
//--------------- StG-60 ----------------
/obj/item/ammo_magazine/stg
name = "box mag (7.92x33mm Kurz)"
icon = 'icons/obj/ammo_vr.dmi'
icon_state = "stg_30rnd"
caliber = "kurz"
ammo_type = /obj/item/ammo_casing/stg
max_ammo = 30
mag_type = MAGAZINE
/obj/item/ammo_casing/stg
desc = "A 7.92×33mm Kurz casing."
icon_state = "rifle-casing"
caliber = "kurz"
projectile_type = /obj/item/projectile/bullet/rifle/a762
/obj/item/ammo_magazine/stg/empty
initial_ammo = 0
//------------- Battlerifle -------------
/obj/item/ammo_magazine/battlerifle
name = "box mag (9.5x40mm)"
icon = 'icons/obj/ammo_vr.dmi'
icon_state = "battlerifle"
caliber = "9.5x40mm"
ammo_type = /obj/item/ammo_casing/a95mm
max_ammo = 36
mag_type = MAGAZINE
multiple_sprites = 1
/obj/item/ammo_casing/a95mm
desc = "A 9.5x40mm bullet casing."
icon_state = "rifle-casing"
caliber = "9.5x40mm"
projectile_type = /obj/item/projectile/bullet/rifle/a95mm
/obj/item/projectile/bullet/rifle/a95mm
damage = 40
penetrating = 2 // Better penetration than the 7.62mm
/obj/item/ammo_magazine/battlerifle/empty
initial_ammo = 0
//---------------- PDW ------------------
/obj/item/ammo_magazine/mc9mml
name = "\improper SMG magazine (9mm)"
icon = 'icons/obj/ammo_vr.dmi'
icon_state = "smg"
origin_tech = list(TECH_COMBAT = 2)
mag_type = MAGAZINE
matter = list(DEFAULT_WALL_MATERIAL = 1800)
caliber = "9mm"
ammo_type = /obj/item/ammo_casing/c9mm
max_ammo = 30
multiple_sprites = 1
/obj/item/ammo_magazine/mc9mml/empty
initial_ammo = 0
/obj/item/ammo_magazine/mc9mml/ap
name = "\improper SMG magazine (9mm armor-piercing)"
ammo_type = /obj/item/ammo_casing/c9mm/ap
/obj/item/ammo_magazine/mc9mml/flash
name = "\improper SMG magazine (9mm flash)"
ammo_type = /obj/item/ammo_casing/c9mmf
/obj/item/ammo_magazine/mc9mml/rubber
name = "\improper SMG magazine (9mm rubber)"
ammo_type = /obj/item/ammo_casing/c9mmr
/obj/item/ammo_magazine/mc9mml/practice
name = "\improper SMG magazine (9mm practice)"
ammo_type = /obj/item/ammo_casing/c9mmp
@@ -0,0 +1,345 @@
/* TUTORIAL
"icon" is the file with the HUD/ground icon for the item
"icon_state" is the iconstate in this file for the item
"icon_override" is the file with the on-mob icons, can be the same file
"item_state" is the iconstate for the on-mob icons:
item_state_s is used for worn uniforms on mobs
item_state_r and item_state_l are for being held in each hand
"item_state_slots" can replace "item_state", it is a list:
item_state_slots["slotname1"] = "item state for that slot"
item_state_slots["slotname2"] = "item state for that slot"
*/
/* TEMPLATE
//ckey:Character Name
/obj/item/weapon/fluff/charactername
name = ""
desc = ""
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "myicon"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "myicon"
*/
//For general use
/obj/item/device/modkit_conversion
name = "modification kit"
desc = "A kit containing all the needed tools and parts to modify a suit and helmet."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "modkit"
var/parts = 3
var/from_helmet = /obj/item/clothing/head/helmet/space/void
var/from_suit = /obj/item/clothing/suit/space/void
var/to_helmet = /obj/item/clothing/head/cardborg
var/to_suit = /obj/item/clothing/suit/cardborg
//Conversion proc
afterattack(obj/O, mob/user as mob)
var/flag
var/to_type
if(istype(O,from_helmet))
flag = 1
to_type = to_helmet
else if(istype(O,from_suit))
flag = 2
to_type = to_suit
else
return
if(!(parts & flag))
user << "<span class='warning'>This kit has no parts for this modification left.</span>"
return
if(istype(O,to_type))
user << "<span class='notice'>[O] is already modified.</span>"
return
if(!isturf(O.loc))
user << "<span class='warning'>[O] must be safely placed on the ground for modification.</span>"
return
playsound(user.loc, 'sound/items/Screwdriver.ogg', 100, 1)
var/N = new to_type(O.loc)
user.visible_message("<span class='warning'>[user] opens \the [src] and modifies \the [O] into \the [N].</span>","<span class='warning'>You open \the [src] and modify \the [O] into \the [N].</span>")
qdel(O)
parts &= ~flag
if(!parts)
qdel(src)
//JoanRisu:Joan Risu
/obj/item/weapon/flame/lighter/zippo/fluff/joan
name = "Federation Zippo Lighter"
desc = "A red zippo lighter with the United Federation Logo on it."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "joanzip"
//JoanRisu:Joan Risu
/obj/item/weapon/sword/fluff/joanaria
name = "Aria"
desc = "A beautifully crafted rapier owned by Joan Risu. It has a thin blade and is used for quick attacks."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "joanaria"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "joanariamob"
origin_tech = "materials=7"
force = 15
sharp = 1
edge = 1
hitsound = 'sound/weapons/bladeslice.ogg'
/obj/item/weapon/sword/fluff/joanaria/handle_shield(mob/user, var/damage, atom/damage_source = null, mob/attacker = null, var/def_zone = null, var/attack_text = "the attack")
if(default_parry_check(user, attacker, damage_source) && prob(75))
user.visible_message("<span class='danger'>\The [user] parries [attack_text] with \the [src]!</span>")
playsound(user.loc, 'sound/weapons/punchmiss.ogg', 50, 1)
return 1
return 0
//joanrisu:Katarina Eine
/obj/item/weapon/material/hatchet/tacknife/combatknife/fluff/katarina
name = "tactical Knife"
desc = "A tactical knife with a small butterly engraved on the blade."
obj/item/weapon/material/hatchet/tacknife/combatknife/fluff/katarina/handle_shield(mob/user, var/damage, atom/damage_source = null, mob/attacker = null, var/def_zone = null, var/attack_text = "the attack")
if(default_parry_check(user, attacker, damage_source) && prob(75))
user.visible_message("<span class='danger'>\The [user] parries [attack_text] with \the [src]!</span>")
playsound(user.loc, 'sound/weapons/punchmiss.ogg', 50, 1)
return 1
return 0
//For General use
/obj/item/weapon/sword/fluff/joanaria/scisword
name = "Scissor Blade"
desc = "A sword that can not only cut down your enemies, it can also cut fabric really neatly"
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "scisword"
origin_tech = "materials=7"
//john.wayne9392:Harmony Prechtl
/obj/item/weapon/twohanded/fireaxe/fluff/mjollnir
name = "Mjollnir"
desc = "Large hammer that looks like it can do a great deal of damage if properly used."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "harmonymjollnir"
origin_tech = "materials=7"
attack_verb = list("attacked", "hammered", "smashed", "slammed", "crushed")
//JoanRisu:Joan Risu
/obj/item/weapon/card/id/centcom/fluff/joanbadge
name = "Faded Badge"
desc = "A faded badge, backed with leather, that reads 'NT Security Force' across the front."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "joanbadge"
registered_name = "Joan Risu"
assignment = "Centcom Officer"
attack_self(mob/user as mob)
if(isliving(user))
user.visible_message("<span class='warning'>[user] flashes their golden security badge.\nIt reads:NT Security.</span>","<span class='warning'>You display the faded badge.\nIt reads: NT Security.</span>")
attack(mob/living/carbon/human/M, mob/living/user)
if(isliving(user))
user.visible_message("<span class='warning'>[user] invades [M]'s personal space, thrusting [src] into their face insistently.</span>","<span class='warning'>You invade [M]'s personal space, thrusting [src] into their face insistently.</span>")
//JoanRisu:Joan Risu
/obj/item/device/pda/heads/hos/fluff/joanpda
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "pda-joan"
//Vorrarkul:Lucina Dakarim
/obj/item/device/pda/heads/hos/fluff/lucinapda
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "pda-lucina"
//john.wayne9392:Harmony Prechtl
/obj/item/device/modkit_conversion/fluff/harmonyspace
name = "Harmony's captain space suit modkit"
desc = "A kit containing all the needed tools and parts to modify a Captain's hardsuit. It has green and yellow parts inside."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "harmony_kit"
from_helmet = /obj/item/clothing/head/helmet/space/capspace
from_suit = /obj/item/clothing/suit/armor/captain
to_helmet = /obj/item/clothing/head/helmet/space/capspace/fluff/harmhelm
to_suit = /obj/item/clothing/suit/armor/captain/fluff/harmsuit
//john.wayne9392:Harmony Prechtl
/obj/item/device/modkit_conversion/fluff/harmonysuit
name = "Harmony's captain suit modkit"
desc = "A sewing kit containing all the needed tools and fabric to modify a Captain's suit and hat. It has green and yellow fabrics inside."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "harmony_kit"
from_helmet = /obj/item/clothing/head/caphat
from_suit = /obj/item/clothing/under/rank/captain
to_helmet = /obj/item/clothing/head/centhat/fluff/harmhat
to_suit = /obj/item/clothing/under/rank/captain/fluff/harmuniform
//scree:Scree
/obj/item/device/modkit_conversion/fluff/screekit
name = "Scree's hardsuit modification kit"
desc = "A kit containing all the needed tools and parts to modify a hardsuit for a specific user. This one looks like it's fitted for a winged creature."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "modkit"
from_helmet = /obj/item/clothing/head/helmet/space/void/engineering
from_suit = /obj/item/clothing/suit/space/void/engineering
to_helmet = /obj/item/clothing/head/helmet/space/void/engineering/fluff/screehelm
to_suit = /obj/item/clothing/suit/space/void/engineering/fluff/screespess
//General Use
/obj/item/weapon/flag
name = "Nanotrasen Banner"
desc = "I pledge allegiance to the flag of a megacorporation in space."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "Flag_Nanotrasen"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "Flag_Nanotrasen_mob"
attack_self(mob/user as mob)
if(isliving(user))
user.visible_message("<span class='warning'>[user] waves their Banner around!</span>","<span class='warning'>You wave your Banner around.</span>")
attack(mob/living/carbon/human/M, mob/living/user)
if(isliving(user))
user.visible_message("<span class='warning'>[user] invades [M]'s personal space, thrusting [src] into their face insistently.</span>","<span class='warning'>You invade [M]'s personal space, thrusting [src] into their face insistently.</span>")
federation
name = "Federation Banner"
desc = "Space, The Final Frontier. Sorta. Just go with it and say the damn oath."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "flag_federation"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "flag_federation_mob"
xcom
name = "Alien Combat Command Banner"
desc = "A banner bearing the symbol of a task force fighting an unknown alien power."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "flag_xcom"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "flag_xcom_mob"
advent
name = "ALIEN Coalition Banner"
desc = "A banner belonging to traitors who work for an unknown alien power."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "flag_advent"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "flag_advent_mob"
//zodiacshadow: ?
/obj/item/device/radio/headset/fluff/zodiacshadow
name = "Nehi's 'phones"
desc = "A pair of old-fashioned purple headphones for listening to music that also double as an NT-approved headset; they connect nicely to any standard PDA. One side is engraved with the letters NEHI, the other having an elaborate inscription of the words \"My voice is my weapon of choice\" in a fancy font. A modern polymer allows switching between modes to either allow one to hear one's surroundings or to completely block them out."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "headphones"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "headphones_mob"
// OrbisA: Richard D'angelo
/obj/item/weapon/melee/fluff/holochain
name = "Holographic Chain"
desc = "A High Tech solution to simple perversions. It has a red leather handle and the initials R.D. on the silver base."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "holochain"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "holochain_mob"
flags = CONDUCT | NOBLOODY
no_attack_log = 1 //if you want to turn on the attack log for this, comment/delete this line. Orbis.
slot_flags = SLOT_BELT
force = 10
throwforce = 3
w_class = 3
damtype = HALLOSS
attack_verb = list("flogged", "whipped", "lashed", "disciplined", "chastised", "flayed")
// joey4298:Emoticon
/obj/item/device/fluff/id_kit_mime
name = "Mime ID reprinter"
desc = "Stick your ID in one end and it'll print a new ID out the other!"
icon = 'icons/obj/bureaucracy.dmi'
icon_state = "labeler1"
afterattack(obj/O, mob/user as mob)
var/new_icon = "mime"
if(istype(O,/obj/item/weapon/card/id) && O.icon_state != new_icon)
//O.icon = src.icon // just in case we're using custom sprite paths with fluff items.
O.icon_state = new_icon // Changes the icon without changing the access.
playsound(user.loc, 'sound/items/polaroid2.ogg', 100, 1)
user.visible_message("<span class='warning'> [user] reprints their ID.</span>")
del(src)
else if(O.icon_state == new_icon)
user << "<span class='notice'>[O] already has been reprinted.</span>"
return
else
user << "<span class='warning'>This isn't even an ID card you idiot.</span>"
return
//arokha:Aronai Kadigan
/obj/item/weapon/card/id/centcom/fluff/aro
registered_name = "CONFIGURE ME"
assignment = "CC Medical"
var/configured = 0
attack_self(mob/user as mob)
if(configured == 1) return ..()
user.set_id_info(src)
configured = 1
user << "<span class='notice'>Card settings set.</span>"
//arokha:Aronai Kadigan
/obj/item/weapon/reagent_containers/hypospray/fluff/aronai
name = "worn hypospray"
desc = "This hypospray seems a bit well-used. The blue band indicates it's from the CentCom medical division. There's an 'A' scratched into the bottom."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "aro_hypo"
New()
..()
reagents.add_reagent("inaprovaline", 5)
reagents.add_reagent("tricordrazine", 25)
//Swat43:Fortune Bloise
/obj/item/weapon/storage/backpack/satchel/fluff/swat43bag
name = "Coloured Satchel"
desc = "That's a coloured satchel with red stripes, with a heart and ripley logo on each side."
icon = 'icons/vore/custom_items_vr.dmi'
icon_state = "swat43-bag"
icon_override = 'icons/vore/custom_items_vr.dmi'
item_state = "swat43-bag_mob"
//Dhaeleena:Dhaeleena M'iar
/obj/item/clothing/accessory/medal/silver/security/fluff/dhael
desc = "An award for distinguished combat and sacrifice in defence of corporate commercial interests. Often awarded to security staff. It's engraved with the letters S.W.A.T."
//Vorrarkul:Lucina Dakarim
/obj/item/clothing/accessory/medal/gold/fluff/lucina
name = "Medal of Medical Excellence"
desc = "A medal awarded to Lucina Darkarim for excellence in medical service."
@@ -0,0 +1,130 @@
// BEGIN - DO NOT EDIT PROTOTYPE
/obj/item/fluff/permit
name = "Sample Permit"
desc = {"There is a bright red <b><font color=red>SAMPLE PERMIT</font></b> stamped across the stock photo displayed on the card. Obviously this is only an example to educate security.
<b>NAME:</b> First Last | <b>RACE:</b> Human | <b>HOMEWORLD:</b> Moon (if applicable), Planet, System
<b>DOB:</b> DD/Mon/YYYY | <b>HEIGHT:</b> XXcm | <b>SEX:</b> Female
The individual named above is licensed by the Nanotrasen Department of Civil Protection to ___________________.
This license expires on DD/Month/YYYY and must be renewed by CentCom prior to this date."}
icon = 'icons/obj/card.dmi'
icon_state = "guest"
w_class = 1
// END - DO NOT EDIT PROTOTYPE
/* TEMPLATE
/obj/item/fluff/permit/charactername
name = "Name's Thing Permit"
desc = {"
<b>NAME:</b> Firstname Lastname | <b>RACE:</b> Human | <b>HOMEWORLD:</b> Earth, Sol
<b>DOB:</b> DD/Mon/YYYY | <b>HEIGHT:</b> XXXcm | <b>SEX:</b> X
The individual named above is licensed by the Nanotrasen Department of Civil Protection to openly carry XYZ. CONDITIONS.
This license expires on DD/Mon/YYYY and must be renewed by CentCom prior to this date."}
*/
// bwoincognito:Tasald Corlethian
/obj/item/fluff/permit/tasald_corlethian
name = "Tasald Ajax Corlethian's Sidearm Permit"
desc = {"
<b>NAME:</b> Tasald Ajax Corlethian | <b>RACE:</b> Vulpine | <b>HOMEWORLD:</b> Iscyn, Orta
<b>DOB:</b> 09/Sep/2529 | <b>HEIGHT:</b> 187cm | <b>SEX:</b> Male
The individual named above is licensed by the Nanotrasen Department of Civil Protection to carry one .38 pistol.
This license expires on 30/March/2561 and must be renewed by CentCom prior to this date."}
/*
// jertheace:Jeremiah 'Ace' Acacius
/obj/item/fluff/permit/jerace
name = "Ace's Shotgun Permit"
desc = {"
<b>NAME:</b> Jeremiah Acacius | <b>RACE:</b> Human | <b>HOMEWORLD:</b> Earth, Sol
<b>DOB:</b> 17/Jun/2532 | <b>HEIGHT:</b> 178cm | <b>SEX:</b> Male
The individual named above is licensed by the Nanotrasen Department of Civil Protection to openly carry one M45D shotgun loaded with less-than-lethal munitions as a head of staff. Else this weapon is to be turned in to security for holding until the end of the shift.
This license expires on 01/Jun/2560 and must be renewed by CentCom prior to this date."}
*/
/*
// sasoperative:Joseph Skinner
/obj/item/fluff/permit/josephskinner
name = "Joseph Skinner's 12g Revolver Permit"
desc = {"
<b>NAME:</b> Joseph Cyrus Skinner | <b>RACE:</b> Human | <b>HOMEWORLD:</b> Earth, Sol
<b>DOB:</b> 10/Jun/2532 | <b>HEIGHT:</b> 162.5cm | <b>SEX:</b> Male
The individual named above is licensed by the Nanotrasen Department of Civil Protection to carry one 12 gauge revolver loaded with less-than-lethal munitions as a member of security or head of staff. Else this weapon is to be turned in to security for holding until the end of the shift.
This license expires on 29/Nov/2559 and must be renewed by CentCom prior to this date."}
*/
/*
// wankersonofjerkin:Ryan Winz
/obj/item/fluff/permit/ryanwinz
name = "Ryan Winz's Revolver Permit"
desc = {"
<b>NAME:</b> Ryan Winz | <b>RACE:</b> Human | <b>HOMEWORLD:</b> New Ekaterina, Moskva
<b>DOB:</b> 27/Oct/2536 | <b>HEIGHT:</b> 172cm | <b>SEX:</b> Male
The individual named above is licensed by the Nanotrasen Department of Civil Protection to openly carry one Colt Single-Action Army revolver as a security officer or head of staff. Else this weapon is to be turned in to security for holding until the end of the shift.
This license expires on 26/Dec/2559 and must be renewed by CentCom prior to this date."}
*/
// bwoincognito:Tasald Corlethian
/obj/item/fluff/permit/tasald_corlethian
name = "Tasald Ajax Corlethian's Sidearm Permit"
desc = {"
<b>NAME:</b> Tasald Ajax Corlethian | <b>RACE:</b> Vulpine | <b>HOMEWORLD:</b> Iscyn, Orta
<b>DOB:</b> 09/Sep/2529 | <b>HEIGHT:</b> 187cm | <b>SEX:</b> Male
The individual named above is licensed by the Nanotrasen Department of Civil Protection to carry one .38 pistol.
This license expires on 30/March/2561 and must be renewed by CentCom prior to this date."}
// arokha:Aronai Kadigan
/obj/item/fluff/permit/aronai_kadigan
name = "Aronai Kadigan's Sidearm Permit"
desc = {"
<b>NAME:</b> Aronai Kadigan | <b>RACE:</b> Cross Fox | <b>HOMEWORLD:</b> New Kitsuhana, KHI1
<b>DOB:</b> 12/Jul/2530 | <b>HEIGHT:</b> 188cm | <b>SEX:</b> Male
The individual named above is licensed by the Nanotrasen Department of Civil Protection to carry one KIN-H21 (Egun Variant).
This license expires on 30/Sep/2560 and must be renewed by CentCom prior to this date."}
// joanrisu:Joan Risu
/obj/item/fluff/permit/joanrisu
name = "Joan Risu's Sidearm Permit"
desc = {"
<b>NAME:</b> Joan Risu | <b>RACE:</b> Squirrelkin | <b>HOMEWORLD:</b> Luna, Gaia, Koi
<b>DOB:</b> 16/Apr/2536 | <b>HEIGHT:</b> 161cm | <b>SEX:</b> Female
The individual named above is licensed by the Nanotrasen Department of Civil Protection to carry one MWPSB Dominator.
This license expires on 11/Dec/2560 and must be renewed by CentCom prior to this date."}
// molenar:Kari Akiren
/obj/item/fluff/permit/kari_akiren
name = "Kari Akiren's Rifle Permit"
desc = {"
<b>NAME:</b> Kari Akiren | <b>RACE:</b> Inkling | <b>HOMEWORLD:</b> Supesu
<b>DOB:</b> 26-Jun-2553 | <b>HEIGHT:</b> 163cm | <b>SEX:</b> Female
The individual named above is licensed by the Nanotrasen Department of Civil Protection to carry one Clockwork Rifle (bolt-action variant).
This license expires on 14/Dec/2560 and must be renewed by CentCom prior to this date."}
//eekasqueak: Serkii Miishy
/obj/item/fluff/permit/serkiimiishy
name = "Serkii Miishy's Stun Revolver Permit"
desc = {"
<b>NAME:</b> Serkii Miishy | <b>RACE:</b> Mousemorph | <b>HOMEWORLD:</b> Mars, Sol
<b>DOB:</b> 10/9/2441 | <b>HEIGHT:</b> 122cm | <b>SEX:</b> Male
The individual named above is licensed by the Nanotrasen Department of Civil Protection to carry one stun revolver.
This license expires on 30/March/2561 and must be renewed by CentCom prior to this date."}
//Razerwing:Archer Maximus
/obj/item/fluff/permit/archermaximus
name = "Archer Maximus's MEUSOC 45 Permit"
desc = {"
<b>NAME:</b> FArcher Maximus | <b>RACE:</b> Human | <b>HOMEWORLD:</b> Charybdis
<b>DOB:</b> 04/18/2521 | <b>HEIGHT:</b> 172.7cm | <b>SEX:</b> female
The individual named above is licensed by the Nanotrasen Department of Civil Protection to openly carry a MEUSOC 45. CONDITIONS.
This license expires on 31/May/2561 and must be renewed by CentCom prior to this date."}