Merge pull request #9957 from mwerezak/hats

Updates hats to use item_state_slots where necessary
This commit is contained in:
Chinsky
2015-07-01 06:56:21 +03:00
30 changed files with 212 additions and 178 deletions

View File

@@ -97,10 +97,13 @@
// Inventory slot strings.
// since numbers cannot be used as associative list keys.
#define slot_back_str "back"
//icon_back, icon_l_hand, etc would be much better names for these...
#define slot_back_str "slot_back"
#define slot_l_hand_str "slot_l_hand"
#define slot_r_hand_str "slot_r_hand"
#define slot_w_uniform_str "w_uniform"
#define slot_w_uniform_str "slot_w_uniform"
#define slot_head_str "slot_head"
#define slot_wear_suit_str "slot_suit"
// Bitflags for clothing parts.
#define HEAD 1

View File

@@ -48,7 +48,6 @@
/obj/item/clothing/head/culthood/magus
name = "magus helm"
icon_state = "magus"
item_state = "magus"
desc = "A helm worn by the followers of Nar-Sie."
flags_inv = HIDEFACE
flags = HEADCOVERSEYES | HEADCOVERSMOUTH | BLOCKHAIR
@@ -56,7 +55,6 @@
/obj/item/clothing/head/culthood/alt
icon_state = "cult_hoodalt"
item_state = "cult_hoodalt"
/obj/item/clothing/suit/cultrobes
name = "cult robes"
@@ -88,7 +86,6 @@
name = "cult helmet"
desc = "A space worthy helmet used by the followers of Nar-Sie"
icon_state = "cult_helmet"
item_state = "cult_helmet"
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
siemens_coefficient = 0

View File

@@ -16,7 +16,7 @@
new /obj/item/weapon/storage/backpack/satchel_cap(src)
new /obj/item/clothing/suit/captunic(src)
new /obj/item/clothing/suit/captunic/capjacket(src)
new /obj/item/clothing/head/helmet/cap(src)
new /obj/item/clothing/head/caphat/cap(src)
new /obj/item/clothing/under/rank/captain(src)
new /obj/item/clothing/suit/storage/vest(src)
new /obj/item/weapon/cartridge/captain(src)
@@ -28,7 +28,7 @@
new /obj/item/clothing/suit/armor/captain(src)
new /obj/item/weapon/melee/telebaton(src)
new /obj/item/clothing/under/dress/dress_cap(src)
new /obj/item/clothing/head/helmet/formalcaptain(src)
new /obj/item/clothing/head/caphat/formal(src)
new /obj/item/clothing/under/captainformal(src)
return
@@ -82,7 +82,7 @@
new /obj/item/clothing/shoes/leather(src)
new /obj/item/clothing/shoes/white(src)
new /obj/item/clothing/under/rank/head_of_personnel_whimsy(src)
new /obj/item/clothing/head/helmet/hop(src)
new /obj/item/clothing/head/caphat/hop(src)
return
@@ -103,13 +103,13 @@
new /obj/item/weapon/storage/backpack/security(src)
else
new /obj/item/weapon/storage/backpack/satchel_sec(src)
new /obj/item/clothing/head/helmet/HoS(src)
new /obj/item/clothing/head/HoS(src)
new /obj/item/clothing/suit/storage/vest/hos(src)
new /obj/item/clothing/under/rank/head_of_security/jensen(src)
new /obj/item/clothing/under/rank/head_of_security/corp(src)
new /obj/item/clothing/suit/armor/hos/jensen(src)
new /obj/item/clothing/suit/armor/hos(src)
new /obj/item/clothing/head/helmet/HoS/dermal(src)
new /obj/item/clothing/head/HoS/dermal(src)
new /obj/item/weapon/cartridge/hos(src)
new /obj/item/device/radio/headset/heads/hos(src)
new /obj/item/clothing/glasses/sunglasses/sechud(src)
@@ -148,7 +148,7 @@
new /obj/item/clothing/under/rank/warden(src)
new /obj/item/clothing/under/rank/warden/corp(src)
new /obj/item/clothing/suit/armor/vest/warden(src)
new /obj/item/clothing/head/helmet/warden(src)
new /obj/item/clothing/head/warden(src)
new /obj/item/weapon/cartridge/security(src)
new /obj/item/device/radio/headset/headset_sec(src)
new /obj/item/clothing/glasses/sunglasses/sechud(src)

View File

@@ -75,7 +75,6 @@
/obj/item/clothing/head/chameleon
name = "grey cap"
icon_state = "greysoft"
item_state = "greysoft"
desc = "It looks like a plain hat, but upon closer inspection, there's an advanced holographic array installed inside. It seems to have a small dial inside."
origin_tech = list(TECH_ILLEGAL = 3)
body_parts_covered = 0

View File

@@ -241,6 +241,10 @@ BLIND // can't see anything
/obj/item/clothing/head
name = "head"
icon = 'icons/obj/clothing/hats.dmi'
item_icons = list(
slot_l_hand_str = 'icons/mob/items/lefthand_hats.dmi',
slot_r_hand_str = 'icons/mob/items/righthand_hats.dmi',
)
body_parts_covered = HEAD
slot_flags = SLOT_HEAD
w_class = 2.0

View File

@@ -21,32 +21,40 @@
name = "collectable xenomorph helmet!"
desc = "Hiss hiss hiss!"
icon_state = "xenom"
item_state_slots = list(
slot_l_hand_str = "xenos_helm",
slot_r_hand_str = "xenos_helm",
)
body_parts_covered = HEAD|FACE|EYES
/obj/item/clothing/head/collectable/chef
name = "collectable chef's hat"
desc = "A rare Chef's Hat meant for hat collectors!"
icon_state = "hats"
icon_state = "chefhat"
item_state = "chefhat"
/obj/item/clothing/head/collectable/paper
name = "collectable paper hat"
desc = "What looks like an ordinary paper hat, is actually a rare and valuable collector's edition paper hat. Keep away from water, fire and Librarians."
icon_state = "paper"
item_state = "paper"
body_parts_covered = 0
/obj/item/clothing/head/collectable/tophat
name = "collectable top hat"
desc = "A top hat worn by only the most prestigious hat collectors."
icon_state = "tophat"
item_state = "that"
item_state = "tophat"
body_parts_covered = 0
/obj/item/clothing/head/collectable/captain
name = "collectable captain's hat"
desc = "A Collectable Hat that'll make you look just like a real comdom!"
icon_state = "captain"
item_state = "caphat"
item_state_slots = list(
slot_l_hand_str = "caphat",
slot_r_hand_str = "caphat",
)
body_parts_covered = 0
/obj/item/clothing/head/collectable/police
@@ -72,33 +80,32 @@
name = "collectable slime hat"
desc = "Just like a real Brain Slug!"
icon_state = "headslime"
item_state = "headslime"
/obj/item/clothing/head/collectable/flatcap
name = "collectable flat cap"
desc = "A Collectible farmer's Flat Cap!"
icon_state = "flat_cap"
item_state = "detective"
item_state_slots = list(
slot_l_hand_str = "detective",
slot_r_hand_str = "detective",
)
/obj/item/clothing/head/collectable/pirate
name = "collectable pirate hat"
desc = "You'd make a great Dread Syndie Roberts!"
icon_state = "pirate"
item_state = "pirate"
body_parts_covered = 0
/obj/item/clothing/head/collectable/kitty
name = "collectable kitty ears"
desc = "The fur feels.....a bit too realistic."
icon_state = "kitty"
item_state = "kitty"
body_parts_covered = 0
/obj/item/clothing/head/collectable/rabbitears
name = "collectable rabbit ears"
desc = "Not as lucky as the feet!"
icon_state = "bunny"
item_state = "bunny"
body_parts_covered = 0
/obj/item/clothing/head/collectable/wizard
@@ -110,7 +117,6 @@
name = "collectable hard hat"
desc = "WARNING! Offers no real protection, or luminosity, but it is damn fancy!"
icon_state = "hardhat0_yellow"
item_state = "hardhat0_yellow"
body_parts_covered = 0
/obj/item/clothing/head/collectable/HoS
@@ -123,10 +129,8 @@
name = "collectable Thunderdome helmet"
desc = "Go Red! I mean Green! I mean Red! No Green!"
icon_state = "thunderdome"
item_state = "thunderdome"
/obj/item/clothing/head/collectable/swat
name = "collectable SWAT helmet"
desc = "Now you can be in the Deathsquad too!"
icon_state = "swat"
item_state = "swat"

View File

@@ -2,7 +2,6 @@
name = "hard hat"
desc = "A piece of headgear used in dangerous working conditions to protect the head. Comes with a built-in flashlight."
icon_state = "hardhat0_yellow"
item_state = "hardhat0_yellow"
brightness_on = 4 //luminosity when on
light_overlay = "hardhat_light"
armor = list(melee = 30, bullet = 5, laser = 20,energy = 10, bomb = 20, bio = 10, rad = 20)
@@ -11,11 +10,9 @@
/obj/item/clothing/head/hardhat/orange
icon_state = "hardhat0_orange"
item_state = "hardhat0_orange"
/obj/item/clothing/head/hardhat/red
icon_state = "hardhat0_red"
item_state = "hardhat0_red"
name = "firefighter helmet"
flags = STOPPRESSUREDAMAGE
heat_protection = HEAD
@@ -23,11 +20,9 @@
/obj/item/clothing/head/hardhat/white
icon_state = "hardhat0_white"
item_state = "hardhat0_white"
flags = STOPPRESSUREDAMAGE
heat_protection = HEAD
max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE
/obj/item/clothing/head/hardhat/dblue
icon_state = "hardhat0_dblue"
item_state = "hardhat0_dblue"

View File

@@ -2,8 +2,11 @@
name = "helmet"
desc = "Standard Security gear. Protects the head from impacts."
icon_state = "helmet"
item_state_slots = list(
slot_l_hand_str = "helmet",
slot_r_hand_str = "helmet",
)
flags = HEADCOVERSEYES | THICKMATERIAL
item_state = "helmet"
armor = list(melee = 50, bullet = 15, laser = 50,energy = 10, bomb = 25, bio = 0, rad = 0)
flags_inv = HIDEEARS|HIDEEYES
cold_protection = HEAD
@@ -13,32 +16,10 @@
siemens_coefficient = 0.7
w_class = 3
/obj/item/clothing/head/helmet/warden
name = "warden's hat"
desc = "It's a special helmet issued to the Warden of a securiy force. Protects the head from impacts."
icon_state = "policehelm"
flags_inv = 0
body_parts_covered = 0
/obj/item/clothing/head/helmet/hop
name = "crew resource's hat"
desc = "A stylish hat that both protects you from enraged former-crewmembers and gives you a false sense of authority."
icon_state = "hopcap"
flags_inv = 0
body_parts_covered = 0
/obj/item/clothing/head/helmet/formalcaptain
name = "parade hat"
desc = "No one in a commanding position should be without a perfect, white hat of ultimate authority."
icon_state = "officercap"
flags_inv = 0
body_parts_covered = 0
/obj/item/clothing/head/helmet/riot
name = "riot helmet"
desc = "It's a helmet specifically designed to protect against close range attacks."
icon_state = "riot"
item_state = "helmet"
flags = HEADCOVERSEYES
armor = list(melee = 82, bullet = 15, laser = 5,energy = 5, bomb = 5, bio = 2, rad = 0)
flags_inv = HIDEEARS
@@ -49,7 +30,6 @@
desc = "They're often used by highly trained Swat Members."
icon_state = "swat"
flags = HEADCOVERSEYES
item_state = "swat"
armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 10, rad = 0)
flags_inv = HIDEEARS|HIDEEYES
cold_protection = HEAD
@@ -61,7 +41,6 @@
desc = "<i>'Let the battle commence!'</i>"
icon_state = "thunderdome"
flags = HEADCOVERSEYES
item_state = "thunderdome"
armor = list(melee = 80, bullet = 60, laser = 50,energy = 10, bomb = 25, bio = 10, rad = 0)
cold_protection = HEAD
min_cold_protection_temperature = SPACE_HELMET_MIN_COLD_PROTECTION_TEMPERATURE
@@ -72,7 +51,6 @@
desc = "Ave, Imperator, morituri te salutant."
icon_state = "gladiator"
flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
item_state = "gladiator"
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES
siemens_coefficient = 1
@@ -80,7 +58,6 @@
name = "tactical helmet"
desc = "An armored helmet capable of being fitted with a multitude of attachments."
icon_state = "swathelm"
item_state = "helmet"
flags = HEADCOVERSEYES
sprite_sheets = list(
"Tajara" = 'icons/mob/species/tajaran/helmet.dmi',
@@ -96,7 +73,6 @@
desc = "A helmet with optical and cranial augments coupled to it."
icon_state = "v62"
flags = HEADCOVERSEYES
item_state = "v62"
armor = list(melee = 80, bullet = 60, laser = 50,energy = 25, bomb = 50, bio = 10, rad = 0)
flags_inv = HIDEEARS|HIDEEYES
cold_protection = HEAD
@@ -108,7 +84,10 @@
name = "emergency response team helmet"
desc = "An in-atmosphere helmet worn by members of the NanoTrasen Emergency Response Team. Protects the head from impacts."
icon_state = "erthelmet_cmd"
item_state = "syndicate-helm-green"
item_state_slots = list(
slot_l_hand_str = "syndicate-helm-green",
slot_r_hand_str = "syndicate-helm-green",
)
armor = list(melee = 62, bullet = 50, laser = 50,energy = 35, bomb = 10, bio = 2, rad = 0)
//Commander

View File

@@ -5,28 +5,33 @@
desc = "It's a hat used by chefs to keep hair out of your food. Judging by the food in the mess, they don't work."
icon_state = "chefhat"
item_state = "chefhat"
desc = "The commander in chef's head wear."
siemens_coefficient = 0.9
//Captain: This probably shouldn't be space-worthy
//Captain
/obj/item/clothing/head/caphat
name = "captain's hat"
icon_state = "captain"
desc = "It's good being the king."
item_state = "caphat"
siemens_coefficient = 0.9
item_state_slots = list(
slot_l_hand_str = "caphat",
slot_r_hand_str = "caphat",
)
body_parts_covered = 0
//Captain: This probably shouldn't be space-worthy
/obj/item/clothing/head/helmet/cap
/obj/item/clothing/head/caphat/cap
name = "captain's cap"
desc = "You fear to wear it for the negligence it brings."
icon_state = "capcap"
flags_inv = 0
body_parts_covered = 0
cold_protection = HEAD
min_cold_protection_temperature = SPACE_HELMET_MIN_COLD_PROTECTION_TEMPERATURE
siemens_coefficient = 0.9
body_parts_covered = 0
/obj/item/clothing/head/caphat/formal
name = "parade hat"
desc = "No one in a commanding position should be without a perfect, white hat of ultimate authority."
icon_state = "officercap"
//HOP
/obj/item/clothing/head/caphat/hop
name = "crew resource's hat"
desc = "A stylish hat that both protects you from enraged former-crewmembers and gives you a false sense of authority."
icon_state = "hopcap"
//Chaplain
/obj/item/clothing/head/chaplain_hood
@@ -34,7 +39,6 @@
desc = "It's hood that covers the head. It keeps you warm during the space winters."
icon_state = "chaplain_hood"
flags = HEADCOVERSEYES|BLOCKHAIR
siemens_coefficient = 0.9
body_parts_covered = HEAD|EYES
//Chaplain
@@ -43,14 +47,13 @@
desc = "Maximum piety in this star system."
icon_state = "nun_hood"
flags = HEADCOVERSEYES|BLOCKHAIR
siemens_coefficient = 0.9
body_parts_covered = HEAD
//Mime
/obj/item/clothing/head/beret
name = "beret"
desc = "A beret, an artists favorite headwear."
icon_state = "beret"
siemens_coefficient = 0.9
body_parts_covered = 0
//Security

View File

@@ -3,8 +3,11 @@
/obj/item/clothing/head/centhat
name = "\improper CentComm. hat"
icon_state = "centcom"
item_state_slots = list(
slot_l_hand_str = "centhat",
slot_r_hand_str = "centhat",
)
desc = "It's good to be emperor."
item_state = "centhat"
siemens_coefficient = 0.9
body_parts_covered = 0
@@ -12,7 +15,6 @@
name = "hair flower pin"
icon_state = "hairflower"
desc = "Smells nice."
item_state = "hairflower"
slot_flags = SLOT_HEAD | SLOT_EARS
body_parts_covered = 0
@@ -26,7 +28,7 @@
name = "top-hat"
desc = "It's an amish looking hat."
icon_state = "tophat"
item_state = "that"
item_state = "tophat"
siemens_coefficient = 0.9
body_parts_covered = 0
@@ -66,8 +68,11 @@
/obj/item/clothing/head/syndicatefake
name = "red space-helmet replica"
item_state_slots = list(
slot_l_hand_str = "syndicate-helm-black-red",
slot_r_hand_str = "syndicate-helm-black-red",
)
icon_state = "syndicate"
item_state = "syndicate"
desc = "A plastic replica of a bloodthirsty mercenary's space helmet, you'll look just like a real murderous criminal operative in this! This is a toy, it is not made for use in space!"
flags = BLOCKHAIR
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
@@ -78,8 +83,8 @@
name = "cueball helmet"
desc = "A large, featureless white orb mean to be worn on your head. How do you even see out of this thing?"
icon_state = "cueball"
item_state = "cueball"
flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
item_state="cueball"
flags_inv = 0
body_parts_covered = HEAD|FACE|EYES
@@ -104,24 +109,19 @@
name = "justice hat"
desc = "fight for what's righteous!"
icon_state = "justicered"
item_state = "justicered"
flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR
/obj/item/clothing/head/justice/blue
icon_state = "justiceblue"
item_state = "justiceblue"
/obj/item/clothing/head/justice/yellow
icon_state = "justiceyellow"
item_state = "justiceyellow"
/obj/item/clothing/head/justice/green
icon_state = "justicegreen"
item_state = "justicegreen"
/obj/item/clothing/head/justice/pink
icon_state = "justicepink"
item_state = "justicepink"
/obj/item/clothing/head/rabbitears
name = "rabbit ears"
@@ -133,34 +133,33 @@
name = "flat cap"
desc = "A working man's cap."
icon_state = "flat_cap"
item_state = "detective"
item_state_slots = list(
slot_l_hand_str = "det_hat",
slot_r_hand_str = "det_hat",
)
siemens_coefficient = 0.9
/obj/item/clothing/head/pirate
name = "pirate hat"
desc = "Yarr."
icon_state = "pirate"
item_state = "pirate"
body_parts_covered = 0
/obj/item/clothing/head/hgpiratecap
name = "pirate hat"
desc = "Yarr."
icon_state = "hgpiratecap"
item_state = "hgpiratecap"
body_parts_covered = 0
/obj/item/clothing/head/bandana
name = "pirate bandana"
desc = "Yarr."
icon_state = "bandana"
item_state = "bandana"
/obj/item/clothing/head/bowler
name = "bowler-hat"
desc = "Gentleman, elite aboard!"
icon_state = "bowler"
item_state = "bowler"
body_parts_covered = 0
//stylish bs12 hats
@@ -168,38 +167,32 @@
/obj/item/clothing/head/bowlerhat
name = "bowler hat"
icon_state = "bowler_hat"
item_state = "bowler_hat"
desc = "For the gentleman of distinction."
body_parts_covered = 0
/obj/item/clothing/head/beaverhat
name = "beaver hat"
icon_state = "beaver_hat"
item_state = "beaver_hat"
desc = "Soft felt makes this hat both comfortable and elegant."
/obj/item/clothing/head/boaterhat
name = "boater hat"
icon_state = "boater_hat"
item_state = "boater_hat"
desc = "The ultimate in summer fashion."
/obj/item/clothing/head/fedora
name = "\improper fedora"
name = "fedora"
icon_state = "fedora"
item_state = "fedora"
desc = "A sharp, stylish hat."
/obj/item/clothing/head/feathertrilby
name = "\improper feather trilby"
name = "feather trilby"
icon_state = "feather_trilby"
item_state = "feather_trilby"
desc = "A sharp, stylish hat with a feather."
/obj/item/clothing/head/fez
name = "\improper fez"
name = "fez"
icon_state = "fez"
item_state = "fez"
desc = "You should wear a fez. Fezzes are cool."
//end bs12 hats
@@ -208,7 +201,6 @@
name = "witch costume wig"
desc = "Eeeee~heheheheheheh!"
icon_state = "witch"
item_state = "witch"
flags = BLOCKHAIR
siemens_coefficient = 2.0
@@ -216,7 +208,10 @@
name = "chicken suit head"
desc = "Bkaw!"
icon_state = "chickenhead"
item_state = "chickensuit"
item_state_slots = list(
slot_l_hand_str = "chickensuit",
slot_r_hand_str = "chickensuit",
)
flags = BLOCKHAIR
siemens_coefficient = 0.7
body_parts_covered = HEAD|FACE|EYES
@@ -225,14 +220,16 @@
name = "bear pelt hat"
desc = "Fuzzy."
icon_state = "bearpelt"
item_state = "bearpelt"
flags = BLOCKHAIR
siemens_coefficient = 0.7
/obj/item/clothing/head/xenos
name = "xenos helmet"
icon_state = "xenos"
item_state = "xenos_helm"
item_state_slots = list(
slot_l_hand_str = "xenos_helm",
slot_r_hand_str = "xenos_helm",
)
desc = "A helmet made out of chitinous alien hide."
flags = BLOCKHAIR
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
@@ -243,7 +240,10 @@
name = "natural philosopher's wig"
desc = "A stylish monstrosity unearthed from Earth's Renaissance period. With this most distinguish'd wig, you'll be ready for your next soiree!"
icon_state = "philosopher_wig"
item_state = "philosopher_wig"
item_state_slots = list(
slot_l_hand_str = "pwig",
slot_r_hand_str = "pwig",
)
flags = BLOCKHAIR
siemens_coefficient = 2.0 //why is it so conductive?!
body_parts_covered = 0
@@ -252,5 +252,4 @@
name = "orange bandana"
desc = "An orange piece of cloth, worn on the head."
icon_state = "orange_bandana"
item_state = "orange_bandana"
body_parts_covered = 0

View File

@@ -15,8 +15,11 @@
name = "welding helmet"
desc = "A head-mounted face cover designed to protect the wearer completely from space-arc eye."
icon_state = "welding"
item_state_slots = list(
slot_l_hand_str = "welding",
slot_r_hand_str = "welding",
)
flags = HEADCOVERSEYES | HEADCOVERSMOUTH
item_state = "welding"
matter = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 1000)
var/up = 0
armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
@@ -62,12 +65,10 @@
name = "cake-hat"
desc = "It's tasty looking!"
icon_state = "cake0"
item_state = "cake0"
flags = HEADCOVERSEYES
var/onfire = 0.0
var/status = 0
var/fire_resist = T0C+1300 //this is the max temp it can stand before you start to cook. although it might not burn away, you take damage
var/processing = 0 //I dont think this is used anywhere.
body_parts_covered = EYES
var/onfire = 0
body_parts_covered = HEAD|EYES
/obj/item/clothing/head/cakehat/process()
if(!onfire)
@@ -84,17 +85,18 @@
location.hotspot_expose(700, 1)
/obj/item/clothing/head/cakehat/attack_self(mob/user as mob)
if(status > 1) return
src.onfire = !( src.onfire )
if (src.onfire)
src.force = 3
src.damtype = "fire"
src.icon_state = "cake1"
src.item_state = "cake1"
processing_objects.Add(src)
else
src.force = null
src.damtype = "brute"
src.icon_state = "cake0"
src.item_state = "cake0"
return
@@ -105,17 +107,14 @@
name = "ushanka"
desc = "Perfect for winter in Siberia, da?"
icon_state = "ushankadown"
item_state = "ushankadown"
flags_inv = HIDEEARS
/obj/item/clothing/head/ushanka/attack_self(mob/user as mob)
if(src.icon_state == "ushankadown")
src.icon_state = "ushankaup"
src.item_state = "ushankaup"
user << "You raise the ear flaps on the ushanka."
else
src.icon_state = "ushankadown"
src.item_state = "ushankadown"
user << "You lower the ear flaps on the ushanka."
/*
@@ -125,7 +124,6 @@
name = "carved pumpkin"
desc = "A jack o' lantern! Believed to ward off evil spirits."
icon_state = "hardhat0_pumpkin"//Could stand to be renamed
item_state = "hardhat0_pumpkin"
flags = HEADCOVERSEYES | HEADCOVERSMOUTH | BLOCKHAIR
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
body_parts_covered = HEAD|EYES
@@ -152,7 +150,6 @@
var/icon/earbit = new/icon("icon" = 'icons/mob/head.dmi', "icon_state" = "kittyinner")
ears.Blend(earbit, ICON_OVERLAY)
/obj/item/clothing/head/richard
name = "chicken mask"
desc = "You can hear the distant sounds of rhythmic electronica."

View File

@@ -3,29 +3,28 @@
desc = "It's a peaked cap in a tasteless yellow color."
icon_state = "cargosoft"
flags = HEADCOVERSEYES
item_state = "helmet"
item_state_slots = list(
slot_l_hand_str = "helmet", //probably a placeholder
slot_r_hand_str = "helmet",
)
var/flipped = 0
siemens_coefficient = 0.9
body_parts_covered = 0
dropped()
src.icon_state = initial(icon_state)
src.flipped=0
..()
/obj/item/clothing/head/soft/dropped()
src.icon_state = initial(icon_state)
src.flipped=0
..()
verb/flip()
set category = "Object"
set name = "Flip cap"
set src in usr
if(usr.canmove && !usr.stat && !usr.restrained())
src.flipped = !src.flipped
if(src.flipped)
icon_state = "[icon_state]_flipped"
usr << "You flip the hat backwards."
else
src.icon_state = initial(icon_state)
usr << "You flip the hat back in normal position."
update_clothing_icon() //so our mob-overlays update
/obj/item/clothing/head/soft/attack_self(mob/user)
src.flipped = !src.flipped
if(src.flipped)
icon_state = "[icon_state]_flipped"
user << "You flip the hat backwards."
else
src.icon_state = initial(icon_state)
user << "You flip the hat back in normal position."
update_clothing_icon() //so our mob-overlays update
/obj/item/clothing/head/soft/red
name = "red cap"

View File

@@ -8,11 +8,9 @@
/obj/item/clothing/head/helmet/space/skrell/white
icon_state = "skrell_helmet_white"
item_state = "skrell_helmet_white"
/obj/item/clothing/head/helmet/space/skrell/black
icon_state = "skrell_helmet_black"
item_state = "skrell_helmet_black"
/obj/item/clothing/suit/space/skrell
name = "Skrellian voidsuit"

View File

@@ -2,7 +2,7 @@
/obj/item/clothing/head/helmet/space/capspace
name = "space helmet"
icon_state = "capspace"
item_state = "capspacehelmet"
item_state = "capspace"
desc = "A special helmet designed for work in a hazardous, low-pressure environment. Only for the most fashionable of military figureheads."
flags = HEADCOVERSEYES | BLOCKHAIR | STOPPRESSUREDAMAGE
flags_inv = HIDEFACE

View File

@@ -2,7 +2,7 @@
/obj/item/clothing/head/helmet/space/capspace
name = "space helmet"
icon_state = "capspace"
item_state = "capspacehelmet"
item_state = "capspace"
desc = "A special helmet designed for work in a hazardous, low-pressure environment. Only for the most fashionable of military figureheads."
flags_inv = HIDEFACE
permeability_coefficient = 0.01
@@ -32,11 +32,15 @@
name = "deathsquad helmet"
desc = "That's not red paint. That's real blood."
icon_state = "deathsquad"
item_state = "deathsquad"
item_state_slots = list(
slot_l_hand_str = "syndicate-helm-black-red",
slot_r_hand_str = "syndicate-helm-black-red",
)
armor = list(melee = 65, bullet = 55, laser = 35,energy = 20, bomb = 30, bio = 100, rad = 60)
flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPPRESSUREDAMAGE | THICKMATERIAL
siemens_coefficient = 0.6
//how is this a space helmet?
/obj/item/clothing/head/helmet/space/deathsquad/beret
name = "officer's beret"
desc = "An armored beret commonly used by special operations officers."
@@ -50,6 +54,7 @@
name = "Santa's hat"
desc = "Ho ho ho. Merrry X-mas!"
icon_state = "santahat"
item_state = "santahat"
flags = HEADCOVERSEYES | BLOCKHAIR | STOPPRESSUREDAMAGE
body_parts_covered = HEAD

View File

@@ -7,7 +7,10 @@
icon_state = "space"
desc = "A special helmet designed for work in a hazardous, low-pressure environment."
flags = HEADCOVERSEYES | BLOCKHAIR | HEADCOVERSMOUTH | STOPPRESSUREDAMAGE | THICKMATERIAL | AIRTIGHT
item_state = "space"
item_state_slots = list(
slot_l_hand_str = "s_helmet",
slot_r_hand_str = "s_helmet",
)
permeability_coefficient = 0.01
armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 100, rad = 50)
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE

View File

@@ -2,7 +2,7 @@
/obj/item/clothing/head/helmet/space/syndicate
name = "red space helmet"
icon_state = "syndicate"
item_state = "space_helmet_syndicate"
item_state = "syndicate"
desc = "A crimson helmet sporting clean lines and durable plating. Engineered to look menacing."
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
siemens_coefficient = 0.6
@@ -107,7 +107,7 @@
/obj/item/clothing/head/helmet/space/syndicate/black/med
name = "black medical space helmet"
icon_state = "syndicate-helm-black-med"
item_state = "syndicate-helm-black"
item_state_slots = list(slot_head_str = "syndicate-black-med")
/obj/item/clothing/suit/space/syndicate/black/med
name = "black medical space suit"
@@ -119,7 +119,7 @@
/obj/item/clothing/head/helmet/space/syndicate/black/orange
name = "black and orange space helmet"
icon_state = "syndicate-helm-black-orange"
item_state = "syndicate-helm-black"
item_state_slots = list(slot_head_str = "syndicate-helm-black-orange")
/obj/item/clothing/suit/space/syndicate/black/orange
name = "black and orange space suit"
@@ -142,7 +142,7 @@
/obj/item/clothing/head/helmet/space/syndicate/black/engie
name = "black engineering space helmet"
icon_state = "syndicate-helm-black-engie"
item_state = "syndicate-helm-black"
item_state_slots = list(slot_head_str = "syndicate-helm-black-engie")
/obj/item/clothing/suit/space/syndicate/black/engie
name = "black engineering space suit"

View File

@@ -4,7 +4,10 @@
name = "engineering voidsuit helmet"
desc = "A special helmet designed for work in a hazardous, low-pressure environment. Has radiation shielding."
icon_state = "rig0-engineering"
item_state = "eng_helm"
item_state_slots = list(
slot_l_hand_str = "eng_helm",
slot_r_hand_str = "eng_helm",
)
armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 80)
/obj/item/clothing/suit/space/void/engineering
@@ -21,7 +24,10 @@
name = "mining voidsuit helmet"
desc = "A special helmet designed for work in a hazardous, low pressure environment. Has reinforced plating."
icon_state = "rig0-mining"
item_state = "mining_helm"
item_state_slots = list(
slot_l_hand_str = "mining_helm",
slot_r_hand_str = "mining_helm",
)
armor = list(melee = 50, bullet = 5, laser = 20,energy = 5, bomb = 55, bio = 100, rad = 20)
light_overlay = "helmet_light_dual"
@@ -37,7 +43,10 @@
name = "medical voidsuit helmet"
desc = "A special helmet designed for work in a hazardous, low pressure environment. Has minor radiation shielding."
icon_state = "rig0-medical"
item_state = "medical_helm"
item_state_slots = list(
slot_l_hand_str = "medical_helm",
slot_r_hand_str = "medical_helm",
)
armor = list(melee = 30, bullet = 5, laser = 20,energy = 5, bomb = 25, bio = 100, rad = 50)
/obj/item/clothing/suit/space/void/medical
@@ -53,7 +62,10 @@
name = "security voidsuit helmet"
desc = "A special helmet designed for work in a hazardous, low pressure environment. Has an additional layer of armor."
icon_state = "rig0-sec"
item_state = "sec_helm"
item_state_slots = list(
slot_l_hand_str = "sec_helm",
slot_r_hand_str = "sec_helm",
)
armor = list(melee = 60, bullet = 10, laser = 30, energy = 5, bomb = 45, bio = 100, rad = 10)
siemens_coefficient = 0.7
light_overlay = "helmet_light_dual"
@@ -72,7 +84,10 @@
desc = "A special helmet designed for work in a hazardous, low pressure environments. Has improved thermal protection and minor radiation shielding."
name = "atmospherics voidsuit helmet"
icon_state = "rig0-atmos"
item_state = "atmos_helm"
item_state_slots = list(
slot_l_hand_str = "atmos_helm",
slot_r_hand_str = "atmos_helm",
)
armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 50)
max_heat_protection_temperature = FIRE_HELMET_MAX_HEAT_PROTECTION_TEMPERATURE
light_overlay = "helmet_light_dual"

View File

@@ -3,7 +3,6 @@
name = "void helmet"
desc = "A high-tech dark red space suit helmet. Used for AI satellite maintenance."
icon_state = "void"
item_state = "void"
heat_protection = HEAD
armor = list(melee = 40, bullet = 5, laser = 20,energy = 5, bomb = 35, bio = 100, rad = 20)

View File

@@ -3,7 +3,10 @@
name = "gem-encrusted voidsuit helmet"
desc = "A bizarre gem-encrusted helmet that radiates magical energies."
icon_state = "rig0-wiz"
item_state = "wiz_helm"
item_state_slots = list(
slot_l_hand_str = "wiz_helm",
slot_r_hand_str = "wiz_helm",
)
unacidable = 1 //No longer shall our kind be foiled by lone chemists with spray bottles!
armor = list(melee = 40, bullet = 20, laser = 20,energy = 20, bomb = 35, bio = 100, rad = 60)
siemens_coefficient = 0.7

View File

@@ -2,6 +2,10 @@
/obj/item/clothing/head/bio_hood
name = "bio hood"
icon_state = "bio"
item_state_slots = list(
slot_l_hand_str = "bio_hood",
slot_r_hand_str = "bio_hood",
)
desc = "A hood that protects the head and face from biological comtaminants."
permeability_coefficient = 0.01
flags = HEADCOVERSEYES|HEADCOVERSMOUTH|BLOCKHAIR

View File

@@ -72,12 +72,10 @@
/obj/item/clothing/head/bomb_hood/security
icon_state = "bombsuitsec"
item_state = "bombsuitsec"
body_parts_covered = HEAD
/obj/item/clothing/suit/bomb_suit/security
icon_state = "bombsuitsec"
item_state = "bombsuitsec"
allowed = list(/obj/item/weapon/gun/energy,/obj/item/weapon/melee/baton,/obj/item/weapon/handcuffs)
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS

View File

@@ -2,6 +2,10 @@
name = "wizard hat"
desc = "Strange-looking hat-wear that most certainly belongs to a real magic user."
icon_state = "wizard"
item_state_slots = list(
slot_l_hand_str = "wizhat",
slot_r_hand_str = "wizhat",
)
//Not given any special protective value since the magic robes are full-body protection --NEO
siemens_coefficient = 0.8
body_parts_covered = 0
@@ -30,6 +34,10 @@
desc = "A mysterious helmet that hums with an unearthly power"
icon_state = "magus"
item_state = "magus"
item_state_slots = list(
slot_l_hand_str = "helmet",
slot_r_hand_str = "helmet",
)
siemens_coefficient = 0.8
body_parts_covered = HEAD|FACE|EYES
@@ -37,12 +45,20 @@
name = "psychic amplifier"
desc = "A crown-of-thorns psychic amplifier. Kind of looks like a tiara having sex with an industrial robot."
icon_state = "amp"
item_state_slots = list(
slot_l_hand_str = "helmet",
slot_r_hand_str = "helmet",
)
siemens_coefficient = 0.8
/obj/item/clothing/head/wizard/cap
name = "Gentlemans Cap"
desc = "A checkered gray flat cap woven together with the rarest of threads."
icon_state = "gentcap"
item_state_slots = list(
slot_l_hand_str = "det_hat",
slot_r_hand_str = "det_hat",
)
siemens_coefficient = 0.8
/obj/item/clothing/suit/wizrobe

View File

@@ -17,6 +17,12 @@
armor = list(melee = 10, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0)
siemens_coefficient = 0.9
/obj/item/clothing/head/warden
name = "warden's hat"
desc = "It's a special helmet issued to the Warden of a securiy force."
icon_state = "policehelm"
body_parts_covered = 0
/obj/item/clothing/under/rank/security
name = "security officer's jumpsuit"
desc = "It's made of a slightly sturdier material than standard jumpsuits, to allow for robust protection."
@@ -98,6 +104,10 @@
name = "hat"
desc = "Someone who wears this will look very smart."
icon_state = "detective"
item_state_slots = list(
slot_l_hand_str = "det_hat",
slot_r_hand_str = "det_hat",
)
allowed = list(/obj/item/weapon/reagent_containers/food/snacks/candy_corn, /obj/item/weapon/pen)
armor = list(melee = 50, bullet = 5, laser = 25,energy = 10, bomb = 0, bio = 0, rad = 0)
siemens_coefficient = 0.9
@@ -124,16 +134,19 @@
//item_state = "hos_corporate"
worn_state = "hos_corporate"
/obj/item/clothing/head/helmet/HoS
/obj/item/clothing/head/HoS
name = "Head of Security Hat"
desc = "The hat of the Head of Security. For showing the officers who's in charge."
icon_state = "hoscap"
flags = HEADCOVERSEYES
armor = list(melee = 80, bullet = 60, laser = 50,energy = 10, bomb = 25, bio = 10, rad = 0)
flags_inv = HIDEEARS
body_parts_covered = 0
siemens_coefficient = 0.8
/obj/item/clothing/head/HoS/dermal
name = "Dermal Armour Patch"
desc = "You're not quite sure how you manage to take it on and off, but it implants nicely in your head."
icon_state = "dermal"
siemens_coefficient = 0.6
/obj/item/clothing/suit/armor/hos
name = "armored coat"
desc = "A greatcoat enhanced with a special alloy for some protection and style."
@@ -144,14 +157,6 @@
flags_inv = HIDEJUMPSUIT
siemens_coefficient = 0.6
/obj/item/clothing/head/helmet/HoS/dermal
name = "Dermal Armour Patch"
desc = "You're not quite sure how you manage to take it on and off, but it implants nicely in your head."
icon_state = "dermal"
item_state = "dermal"
siemens_coefficient = 0.6
//Jensen cosplay gear
/obj/item/clothing/under/rank/head_of_security/jensen
desc = "You never asked for anything that stylish."

View File

@@ -638,18 +638,24 @@ var/global/list/damage_icon_parts = list()
head.screen_loc = ui_head //TODO
//Determine the icon to use
var/t_icon = INV_HEAD_DEF_ICON
var/t_icon
if(head.icon_override)
t_icon = head.icon_override
else if(head.sprite_sheets && head.sprite_sheets[species.name])
t_icon = head.sprite_sheets[species.name]
else if(head.item_icons && (slot_head_str in head.item_icons))
t_icon = head.item_icons[slot_head_str]
else
t_icon = INV_HEAD_DEF_ICON
//Determine the state to use
var/t_state = head.icon_state
if(istype(head, /obj/item/weapon/paper))
/* I don't like this, but bandaid to fix half the hats in the game
being completely broken without re-breaking paper hats */
t_state = "paper"
var/t_state
if(head.item_state_slots && head.item_state_slots[slot_head_str])
t_state = head.item_state_slots[slot_head_str]
else if(head.item_state)
t_state = head.item_state
else
t_state = head.icon_state
//Create the image
var/image/standing = image(icon = t_icon, icon_state = t_state)
@@ -703,12 +709,15 @@ var/global/list/damage_icon_parts = list()
var/image/standing
var/t_icon = INV_SUIT_DEF_ICON
if(wear_suit.icon_override)
standing = image("icon" = wear_suit.icon_override, "icon_state" = "[wear_suit.icon_state]")
t_icon = wear_suit.icon_override
else if(wear_suit.sprite_sheets && wear_suit.sprite_sheets[species.name])
standing = image("icon" = wear_suit.sprite_sheets[species.name], "icon_state" = "[wear_suit.icon_state]")
else
standing = image("icon" = 'icons/mob/suit.dmi', "icon_state" = "[wear_suit.icon_state]")
t_icon = wear_suit.sprite_sheets[species.name]
else if(wear_suit.item_icons && wear_suit.item_icons[slot_wear_suit_str])
t_icon = wear_suit.item_icons[slot_wear_suit_str]
standing = image("icon" = t_icon, "icon_state" = "[wear_suit.icon_state]")
if( istype(wear_suit, /obj/item/clothing/suit/straight_jacket) )
drop_from_inventory(handcuffed)

View File

@@ -8,7 +8,7 @@
#define INV_R_HAND_DEF_ICON 'icons/mob/items/righthand.dmi'
#define INV_W_UNIFORM_DEF_ICON 'icons/mob/uniform.dmi'
#define INV_ACCESSORIES_DEF_ICON 'icons/mob/ties.dmi'
#define INV_SUIT_DEF_ICON 'icons/mob/suit.dmi'
/mob/proc/regenerate_icons() //TODO: phase this out completely if possible
return

Binary file not shown.

Before

Width:  |  Height:  |  Size: 114 KiB

After

Width:  |  Height:  |  Size: 109 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 114 KiB

After

Width:  |  Height:  |  Size: 110 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB