Adds CI for missing icon_states (#27063)

* Adds CI for missing icon_states

* yeah

* more fixes

* more fixes

* seems good

* moar

* fix

* yea

* hrtyhrt

* yeah

* WOE
This commit is contained in:
Contrabang
2024-11-14 17:58:06 +00:00
committed by GitHub
parent da630e1b63
commit 8352613d03
74 changed files with 157 additions and 327 deletions
+2 -1
View File
@@ -2,7 +2,7 @@
name = "door"
desc = "It opens and closes."
icon = 'icons/obj/doors/doorint.dmi'
icon_state = "door1"
icon_state = null
anchored = TRUE
opacity = TRUE
density = TRUE
@@ -494,6 +494,7 @@
/obj/machinery/door/morgue
icon = 'icons/obj/doors/doormorgue.dmi'
icon_state = "door1"
/obj/machinery/door/proc/lock()
return
-9
View File
@@ -567,15 +567,6 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/
pixel_y = -32
alpha = 100
/*
* Other Stuff: Is this even used?
*/
/obj/machinery/hologram/projector
name = "hologram projector"
desc = "It makes a hologram appear...with magnets or something..."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "hologram0"
#undef HOLOPAD_PASSIVE_POWER_USAGE
#undef HOLOGRAM_POWER_USAGE
+1 -1
View File
@@ -5,7 +5,7 @@
name = "ominous beacon"
desc = "This looks suspicious..."
icon = 'icons/obj/singularity.dmi'
icon_state = "beacon"
icon_state = "beacon0"
anchored = FALSE
density = TRUE
+1 -5
View File
@@ -144,7 +144,7 @@
/obj/structure/mecha_wreckage/reticence
name = "\improper Reticence wreckage"
icon_state = "reticence-broken"
icon_state = "mime-broken"
color = "#87878715"
desc = "..."
@@ -157,10 +157,6 @@
/obj/item/mecha_parts/part/ripley_left_leg,
/obj/item/mecha_parts/part/ripley_right_leg)
/obj/structure/mecha_wreckage/ripley/mkii
name = "\improper Ripley MK-II wreckage"
icon_state = "ripleymkii-broken"
/obj/structure/mecha_wreckage/ripley/firefighter
name = "\improper Firefighter wreckage"
icon_state = "firefighter-broken"
@@ -264,7 +264,7 @@
density = FALSE
layer = TURF_LAYER
icon = 'icons/effects/blood.dmi'
icon_state = "gibbl5"
icon_state = "mgibbl5"
random_icon_states = list("gib1", "gib2", "gib3", "gib4", "gib5", "gib6")
no_clear = TRUE
mergeable_decal = FALSE
@@ -28,7 +28,7 @@ GLOBAL_LIST_EMPTY(fluidtrack_cache)
//BLOODY FOOTPRINTS
/obj/effect/decal/cleanable/blood/footprints
icon = 'icons/effects/fluidtracks.dmi'
icon_state = "nothingwhatsoever"
icon_state = null
desc = "You REALLY shouldn't follow these.."
gender = PLURAL
random_icon_states = null
@@ -2,10 +2,6 @@
name = "sandy floor"
icon_state = "sandyfloor"
/obj/effect/turf_decal/weather/snow
name = "snowy floor"
icon_state = "snowyfloor"
/obj/effect/turf_decal/weather/snow/corner
name = "snow corner piece"
icon = 'icons/turf/snow.dmi'
+1 -1
View File
@@ -60,7 +60,7 @@
max_integrity = 80
/obj/effect/forcefield/mime/advanced
icon_state = "empty"
icon_state = null
name = "invisible blockade"
desc = "You might be here a while."
lifetime = 60 SECONDS
+6 -4
View File
@@ -7,7 +7,8 @@
opacity = FALSE
density = FALSE
icon = 'icons/obj/lighting.dmi'
icon_state = "glowshroom" //replaced in New
icon_state = "glowshroomf"
base_icon_state = "glowshroom" //replaced in New
layer = ABOVE_NORMAL_TURF_LAYER
max_integrity = 30
var/floor = 0
@@ -20,13 +21,15 @@
/obj/structure/glowshroom/glowcap
name = "glowcap"
desc = "Mycena Ruthenia, a species of mushroom that, while it does glow in the dark, is not actually bioluminescent."
icon_state = "glowcap"
icon_state = "glowcapf"
base_icon_state = "glowcap"
myseed = /obj/item/seeds/glowshroom/glowcap
/obj/structure/glowshroom/shadowshroom
name = "shadowshroom"
desc = "Mycena Umbra, a species of mushroom that emits shadow instead of light."
icon_state = "shadowshroom"
icon_state = "shadowshroomf"
base_icon_state = "shadowshroom"
myseed = /obj/item/seeds/glowshroom/shadowshroom
/obj/structure/glowshroom/shadowshroom/extinguish_light(force = FALSE)
@@ -54,7 +57,6 @@
var/datum/plant_gene/trait/glow/G = myseed.get_gene(/datum/plant_gene/trait/glow)
set_light(G.glow_range(myseed), G.glow_power(myseed), G.glow_color)
setDir(CalcDir())
var/base_icon_state = initial(icon_state)
if(!floor)
switch(dir) //offset to make it be on the wall rather than on the floor
if(NORTH)
-26
View File
@@ -13,8 +13,6 @@ GLOBAL_LIST_INIT(meteors_catastrophic, list(/obj/effect/meteor/medium = 3, /obj/
GLOBAL_LIST_INIT(meteors_gore, list(/obj/effect/meteor/meaty = 5, /obj/effect/meteor/meaty/xeno = 1)) //for meaty ore event
GLOBAL_LIST_INIT(meteors_ops, list(/obj/effect/meteor/goreops)) //Meaty Ops
///////////////////////////////
//Meteor spawning global procs
@@ -334,30 +332,6 @@ GLOBAL_LIST_INIT(meteors_ops, list(/obj/effect/meteor/goreops)) //Meaty Ops
if(!isspaceturf(T))
new /obj/effect/decal/cleanable/blood/xeno(T)
//Meteor Ops
/obj/effect/meteor/goreops
name = "MeteorOps"
icon = 'icons/mob/animal.dmi'
icon_state = "syndicaterangedpsace"
hits = 10
hitpwr = EXPLODE_DEVASTATE
meteorsound = 'sound/effects/blobattack.ogg'
meteordrop = list(/obj/item/food/meat)
var/meteorgibs = /obj/effect/gibspawner/generic
/obj/effect/meteor/goreops/make_debris()
..()
new meteorgibs(get_turf(src))
/obj/effect/meteor/goreops/ram_turf(turf/T)
if(!isspaceturf(T))
new /obj/effect/decal/cleanable/blood(T)
/obj/effect/meteor/goreops/Bump(atom/A)
A.ex_act(hitpwr)
get_hit()
//////////////////////////
//Spookoween meteors
/////////////////////////
+1 -6
View File
@@ -45,11 +45,6 @@
var/damage = 0.0
var/range = 10.0
/obj/effect/begin
name = "begin"
icon = 'icons/obj/stationobjs.dmi'
icon_state = "begin"
/obj/effect/projection
name = "Projection"
desc = "This looks like a projection of something."
@@ -99,7 +94,7 @@
//Makes a tile fully lit no matter what
/obj/effect/fullbright
icon = 'icons/effects/alphacolors.dmi'
icon_state = "white"
icon_state = null // null iconstate is white by default
plane = LIGHTING_PLANE
layer = LIGHTING_LAYER
blend_mode = BLEND_ADD
+1 -1
View File
@@ -65,7 +65,7 @@
/obj/effect/snow
desc = "Perfect for making snow angels, or throwing at other people!"
icon = 'icons/effects/effects.dmi'
icon_state = "snow"
icon_state = "snow1"
layer = ABOVE_ICYOVERLAY_LAYER
/obj/effect/snow/New()
@@ -1,6 +1,7 @@
//temporary visual effects(/obj/effect/temp_visual) used by cult stuff
/obj/effect/temp_visual/cult
icon = 'icons/effects/cult_effects.dmi'
icon_state = null
randomdir = FALSE
duration = 10
@@ -1,5 +1,6 @@
/obj/effect/temp_visual/dir_setting/bloodsplatter
icon = 'icons/effects/blood.dmi'
icon_state = null
duration = 5
randomdir = FALSE
layer = MOB_LAYER - 0.1
@@ -304,7 +305,7 @@
duration = 5
/obj/effect/temp_visual/dir_setting/firing_effect
icon = 'icons/effects/effects.dmi'
icon = 'icons/effects/projectile.dmi'
icon_state = "firing_effect"
duration = 2
@@ -326,10 +327,6 @@
icon_state = "firing_effect_energy"
duration = 3
/obj/effect/temp_visual/dir_setting/firing_effect/magic
icon_state = "shieldsparkles"
duration = 3
/obj/effect/temp_visual/impact_effect
icon_state = "impact_bullet"
duration = 5
@@ -525,7 +522,7 @@
name = "\improper Bluespace energy wave"
desc = "A massive, rippling wave of bluepace energy, all rapidly exhausting itself the moment it leaves the concentrated beam of light."
icon = 'icons/effects/beam_splash.dmi'
icon_state = "beam_splash_l"
icon_state = "beam_splash_w"
layer = ABOVE_ALL_MOB_LAYER
pixel_y = -16
duration = 50
@@ -3,7 +3,7 @@
/obj/effect/projectile
name = "pew"
icon = 'icons/obj/projectiles.dmi'
icon_state = "nothing"
icon_state = null
layer = HITSCAN_LAYER
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
appearance_flags = LONG_GLIDE
@@ -2,7 +2,6 @@
name = "robot parts"
icon = 'icons/obj/robot_parts.dmi'
item_state = "buildpipe"
icon_state = "blank"
flags = CONDUCT
slot_flags = ITEM_SLOT_BELT
var/list/part = null
-2
View File
@@ -96,8 +96,6 @@ GLOBAL_LIST_INIT(rod_recipes, list (
name = "heat resistant rod"
desc = "Treated, specialized iron rods. When exposed to the vacuum of space their coating breaks off, but they can hold up against the extreme heat of molten liquids."
singular_name = "heat resistant rod"
icon_state = "rods"
item_state = "rods"
color = "#5286b9ff"
flags = CONDUCT
w_class = WEIGHT_CLASS_NORMAL
-12
View File
@@ -494,18 +494,6 @@
item_state = "egg3" // It's the green egg in items_left/righthand
item_color = "green"
//This should really be somewhere else but I don't know where. w/e
/obj/item/inflatable_duck
name = "inflatable duck"
desc = "No bother to sink or swim when you can just float!"
icon_state = "inflatable"
item_state = "inflatable"
icon = 'icons/obj/clothing/belts.dmi'
slot_flags = ITEM_SLOT_BELT
flags_2 = ALLOW_BELT_NO_JUMPSUIT_2
/*
* Fake meteor
*/
@@ -143,6 +143,7 @@
projectile_type = /obj/item/projectile/energy/chrono_beam
muzzle_flash_effect = /obj/effect/temp_visual/target_angled/muzzle_flash/energy
muzzle_flash_color = null
icon = 'icons/obj/projectiles.dmi'
icon_state = "chronobolt"
e_cost = 0
+2 -2
View File
@@ -285,8 +285,8 @@
name = "defibrillator paddles"
desc = "A pair of plastic-gripped paddles with flat metal surfaces that are used to deliver powerful electric shocks."
icon = 'icons/obj/defib.dmi'
icon_state = "defibpaddles"
item_state = "defibpaddles"
icon_state = "defibpaddles0"
item_state = "defibpaddles0"
force = 0
throwforce = 6
w_class = WEIGHT_CLASS_BULKY
-12
View File
@@ -91,15 +91,3 @@
materials = list(MAT_PLASMA = MINERAL_MATERIAL_AMOUNT * 0.5, MAT_GLASS = MINERAL_MATERIAL_AMOUNT)
icon_prefix = "plasma"
welded_type = /obj/item/stack/sheet/plasmaglass
/obj/item/shard/scrap
name = "sharpened scrap"
desc = "Some discarded scrap metal. It has sharp, jagged edges."
icon_state = "scrap"
materials = list(MAT_METAL = MINERAL_MATERIAL_AMOUNT)
welded_type = /obj/item/stack/sheet/metal
force = 9
throwforce = 15 //owie
/obj/item/shard/scrap/set_initial_icon_state()
return
-12
View File
@@ -73,15 +73,3 @@
..()
item_state = "horsebroom[HAS_TRAIT(src, TRAIT_WIELDED) ? 1 : 0]"
/obj/item/staff/stick
name = "stick"
desc = "A great tool to drag someone else's drinks across the bar."
icon_state = "stick"
lefthand_file = 'icons/mob/inhands/items_lefthand.dmi'
righthand_file = 'icons/mob/inhands/items_righthand.dmi'
item_state = "stick"
force = 3.0
throwforce = 5.0
throw_speed = 1
throw_range = 5
w_class = WEIGHT_CLASS_SMALL
@@ -569,6 +569,7 @@
name = "trainer's belt"
desc = "For the mining master, holds your lazarus capsules."
icon_state = "lazarusbelt_0"
base_icon_state = "lazarusbelt"
item_state = "lazbelt"
w_class = WEIGHT_CLASS_BULKY
max_w_class = WEIGHT_CLASS_TINY
@@ -582,7 +583,7 @@
update_icon()
/obj/item/storage/belt/lazarus/update_icon_state()
icon_state = "lazarusbelt_[length(contents)]"
icon_state = "[base_icon_state]_[length(contents)]"
/obj/item/storage/belt/lazarus/attackby(obj/item/I, mob/user)
var/amount = length(contents)
@@ -5,13 +5,13 @@
desc = "A wall mounted storage locker."
name = "wall locker"
icon = 'icons/obj/walllocker.dmi'
icon_state = "wall-locker"
icon_state = null
door_anim_time = 0
enable_door_overlay = FALSE
density = FALSE
anchored = TRUE
icon_closed = "wall-locker"
icon_opened = "wall-lockeropen"
icon_closed = null
icon_opened = null
/obj/structure/closet/walllocker/close()
. = ..()
+1
View File
@@ -73,6 +73,7 @@
/obj/structure/fluff/divine
name = "Miracle"
icon = 'icons/obj/hand_of_god_structures.dmi'
icon_state = null
anchored = TRUE
density = TRUE
-23
View File
@@ -30,29 +30,6 @@
else
. += "<span class='notice'>The anchoring screws are <i>unscrewed</i>. The rods look like they could be <b>cut</b> through.</span>"
/obj/structure/grille/fence
var/width = 3
/obj/structure/grille/fence/Initialize(mapload)
. = ..()
if(width > 1)
if(dir in list(EAST, WEST))
bound_width = width * world.icon_size
bound_height = world.icon_size
else
bound_width = world.icon_size
bound_height = width * world.icon_size
/obj/structure/grille/fence/east_west
//width=80
//height=42
icon='icons/fence-ew.dmi'
/obj/structure/grille/fence/north_south
//width=80
//height=42
icon='icons/fence-ns.dmi'
/obj/structure/grille/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir)
. = ..()
update_icon(UPDATE_ICON_STATE)
-19
View File
@@ -54,14 +54,6 @@
if(current_size >= STAGE_FOUR)
deconstruct()
/obj/structure/lattice/clockwork
name = "cog lattice"
desc = "A lightweight support lattice. These hold the Justicar's station together."
icon = 'icons/obj/smooth_structures/lattice_clockwork.dmi'
/obj/structure/lattice/clockwork/Initialize(mapload)
. = ..()
/obj/structure/lattice/catwalk
name = "catwalk"
desc = "A catwalk for easier EVA maneuvering and cable placement."
@@ -104,14 +96,3 @@
/obj/structure/lattice/lava/deconstruction_hints(mob/user)
to_chat(user, "<span class='notice'>The supporting rods look like they could be <b>cut</b>.</span>, but the <i>heat treatment will shatter off</i>.")
/obj/structure/lattice/catwalk/clockwork
name = "clockwork catwalk"
icon = 'icons/obj/smooth_structures/catwalk_clockwork.dmi'
smoothing_flags = SMOOTH_CORNERS
smoothing_groups = null
/obj/structure/lattice/catwalk/clockwork/Initialize(mapload)
. = ..()
if(!mapload)
new /obj/effect/temp_visual/ratvar/floor/catwalk(loc)
new /obj/effect/temp_visual/ratvar/beam/catwalk(loc)
@@ -131,12 +131,3 @@
if(last_ghost_alert + ghost_alert_delay < world.time)
notify_ghosts("[src] active in [get_area(src)].", 'sound/effects/ghost2.ogg', title = alert_title, source = attack_atom, action = (attack_atom == src ? NOTIFY_JUMP : NOTIFY_ATTACK))
last_ghost_alert = world.time
/obj/structure/boulder
name = "boulder"
desc = "A large rock."
icon = 'icons/obj/mining.dmi'
icon_state = "boulder1"
density = TRUE
opacity = TRUE
anchored = TRUE
@@ -1,7 +1,7 @@
/obj/structure/spawner
name = "monster nest"
icon = 'icons/mob/animal.dmi'
icon_state = "hole"
icon_state = null
max_integrity = 100
move_resist = MOVE_FORCE_EXTREMELY_STRONG
@@ -44,18 +44,6 @@
spawn_text = "climbs out of"
faction = list("skeleton")
/obj/structure/spawner/clown
name = "Laughing Larry"
desc = "A laughing, jovial figure. Something seems stuck in his throat."
icon_state = "clownbeacon"
icon = 'icons/obj/device.dmi'
max_integrity = 200
max_mobs = 15
spawn_time = 150
mob_types = list(/mob/living/simple_animal/hostile/retaliate/clown)
spawn_text = "climbs out of"
faction = list("clown")
/obj/structure/spawner/mining
name = "monster den"
desc = "A hole dug into the ground, harboring all kinds of monsters found within most caves or mining asteroids."
-8
View File
@@ -342,14 +342,6 @@
desc = "A sign labelling a restroom."
icon_state = "restroom"
/obj/structure/sign/medbay
name = "\improper MEDBAY"
desc = "The Intergalactic symbol of Medical institutions. You'll probably get help here."
icon_state = "bluecross"
/obj/structure/sign/medbay/alt
icon_state = "bluecross2"
/obj/structure/sign/directions
name = "direction sign"
-7
View File
@@ -52,7 +52,6 @@
sheet_amount = 2
girder_type = /obj/structure/clockwork/wall_gear
var/heated
var/obj/effect/clockwork/overlay/wall/realappearance
smoothing_groups = list(SMOOTH_GROUP_WALLS, SMOOTH_GROUP_BRASS_WALL)
canSmoothWith = list(SMOOTH_GROUP_BRASS_WALL)
@@ -60,12 +59,6 @@
. = ..()
new /obj/effect/temp_visual/ratvar/wall(src)
new /obj/effect/temp_visual/ratvar/beam(src)
realappearance = new /obj/effect/clockwork/overlay/wall(src)
realappearance.linked = src
/turf/simulated/wall/clockwork/Destroy()
QDEL_NULL(realappearance)
return ..()
/turf/simulated/wall/clockwork/bullet_act(obj/item/projectile/Proj)
. = ..()
@@ -248,6 +248,7 @@
desc = "a tentacle."
projectile_type = /obj/item/projectile/tentacle
caliber = "tentacle"
icon = 'icons/obj/projectiles.dmi'
icon_state = "tentacle_end"
muzzle_flash_effect = null
muzzle_flash_color = null
+1 -1
View File
@@ -3,7 +3,7 @@
name = "Arcade Game"
desc = "One of the most generic arcade games ever."
icon = 'icons/obj/arcade.dmi'
icon_state = "clawmachine_on"
icon_state = "clawmachine_1_on"
idle_power_consumption = 40
var/tokens = 0
@@ -2,7 +2,7 @@
name = "circulator/heat exchanger"
desc = "A gas circulator pump and heat exchanger. Its input port is on the south side, and its output port is on the north side."
icon = 'icons/obj/atmospherics/circulator.dmi'
icon_state = "circ1-off"
icon_state = "circ8-off"
anchored = TRUE
density = TRUE
can_unwrench = TRUE
@@ -87,7 +87,6 @@
/obj/machinery/atmospherics/pipe/simple/heat_exchanging/hidden
level=1
icon_state="intact-f"
plane = FLOOR_PLANE
layer = GAS_PIPE_HIDDEN_LAYER
@@ -134,6 +133,5 @@
/obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction/hidden
level=1
icon_state="intact-f"
plane = FLOOR_PLANE
layer = GAS_PIPE_HIDDEN_LAYER
@@ -107,13 +107,6 @@
transfer_prints = TRUE
clipped = TRUE
/obj/item/clothing/gloves/batmangloves
name = "batgloves"
desc = "Used for handling all things bat related."
icon_state = "bmgloves"
item_state = "bmgloves"
item_color="bmgloves"
/obj/item/clothing/gloves/cursedclown
name = "cursed white gloves"
desc = "These things smell terrible, and they're all lumpy. Gross."
+1
View File
@@ -412,6 +412,7 @@
/obj/item/clothing/head/beret/purple
name = "Pierson Family Beret"
desc = "A purple beret, with a small golden crescent moon sewn onto it."
icon = 'icons/obj/clothing/hats.dmi'
icon_state = "beret_purple"
item_state = "purpleberet"
@@ -32,6 +32,7 @@
//Unathi space gear. Huge and restrictive.
/obj/item/clothing/head/helmet/space/unathi
icon = 'icons/obj/clothing/species/unathi/hats.dmi'
icon_state = null
species_restricted = list("Unathi")
sprite_sheets = list(
"Unathi" = 'icons/mob/clothing/species/unathi/helmet.dmi'
@@ -46,6 +47,7 @@
/obj/item/clothing/suit/space/unathi
icon = 'icons/obj/clothing/species/unathi/suits.dmi'
icon_state = null
species_restricted = list("Unathi")
sprite_sheets = list(
"Unathi" = 'icons/mob/clothing/species/unathi/suit.dmi'
@@ -81,6 +83,7 @@
max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT
dyeable = FALSE
icon = 'icons/obj/clothing/species/vox/suits.dmi'
icon_state = null
species_restricted = list("Vox")
sprite_sheets = list(
"Vox" = 'icons/mob/clothing/species/vox/suit.dmi')
@@ -90,6 +93,7 @@
flags = STOPSPRESSUREDMAGE
flags_cover = HEADCOVERSEYES
icon = 'icons/obj/clothing/species/vox/hats.dmi'
icon_state = null
species_restricted = list("Vox")
sprite_sheets = list(
"Vox" = 'icons/mob/clothing/species/vox/head.dmi')
+30 -30
View File
@@ -2,7 +2,7 @@
/obj/item/clothing/head/helmet/space/hardsuit
name = "hardsuit helmet"
desc = "A special helmet designed for work in a hazardous, low-pressure environment."
icon_state = "hardsuit0-engineering"
icon_state = null
item_state = "eng_helm"
max_integrity = 300
armor = list(MELEE = 5, BULLET = 5, LASER = 5, ENERGY = 5, BOMB = 5, RAD = 150, FIRE = 50, ACID = 150)
@@ -143,7 +143,7 @@
/obj/item/clothing/suit/space/hardsuit
name = "hardsuit"
desc = "A special space suit for environments that might pose hazards beyond just the vacuum of space. Provides more protection than a standard space suit."
icon_state = "hardsuit-engineering"
icon_state = null
item_state = "eng_hardsuit"
max_integrity = 300
armor = list(MELEE = 5, BULLET = 5, LASER = 5, ENERGY = 5, BOMB = 5, RAD = 150, FIRE = 50, ACID = 150)
@@ -451,37 +451,37 @@
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/soviet/commander
//Security
/obj/item/clothing/head/helmet/space/hardsuit/security
name = "security hardsuit helmet"
desc = "A special helmet designed for work in a hazardous, low pressure environment. Has an additional layer of armor."
icon_state = "hardsuit0-sec"
item_state = "sec_helm"
item_color = "sec"
armor = list(MELEE = 25, BULLET = 10, LASER = 20, ENERGY = 5, BOMB = 5, RAD = 50, FIRE = 150, ACID = 150)
// /obj/item/clothing/head/helmet/space/hardsuit/security
// name = "security hardsuit helmet"
// desc = "A special helmet designed for work in a hazardous, low pressure environment. Has an additional layer of armor."
// icon_state = "hardsuit0-sec"
// item_state = "sec_helm"
// item_color = "sec"
// armor = list(MELEE = 25, BULLET = 10, LASER = 20, ENERGY = 5, BOMB = 5, RAD = 50, FIRE = 150, ACID = 150)
/obj/item/clothing/suit/space/hardsuit/security
name = "security hardsuit"
desc = "A special suit that protects against hazardous, low pressure environments. Has an additional layer of armor."
icon_state = "hardsuit-sec"
item_state = "sec_hardsuit"
armor = list(MELEE = 25, BULLET = 10, LASER = 20, ENERGY = 5, BOMB = 5, RAD = 50, FIRE = 150, ACID = 150)
allowed = list(/obj/item/gun,/obj/item/flashlight,/obj/item/tank/internals,/obj/item/melee/baton,/obj/item/reagent_containers/spray/pepper,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/restraints/handcuffs)
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security
// /obj/item/clothing/suit/space/hardsuit/security
// name = "security hardsuit"
// desc = "A special suit that protects against hazardous, low pressure environments. Has an additional layer of armor."
// icon_state = "hardsuit-sec"
// item_state = "sec_hardsuit"
// armor = list(MELEE = 25, BULLET = 10, LASER = 20, ENERGY = 5, BOMB = 5, RAD = 50, FIRE = 150, ACID = 150)
// allowed = list(/obj/item/gun,/obj/item/flashlight,/obj/item/tank/internals,/obj/item/melee/baton,/obj/item/reagent_containers/spray/pepper,/obj/item/ammo_box,/obj/item/ammo_casing,/obj/item/restraints/handcuffs)
// helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security
/obj/item/clothing/head/helmet/space/hardsuit/security/hos
name = "head of security's hardsuit helmet"
desc = "A special bulky helmet designed for work in a hazardous, low pressure environment. Has an additional layer of armor."
icon_state = "hardsuit0-hos"
item_color = "hos"
armor = list(MELEE = 40, BULLET = 15, LASER = 20, ENERGY = 5, BOMB = 15, RAD = 50, FIRE = INFINITY, ACID = INFINITY)
// /obj/item/clothing/head/helmet/space/hardsuit/security/hos
// name = "head of security's hardsuit helmet"
// desc = "A special bulky helmet designed for work in a hazardous, low pressure environment. Has an additional layer of armor."
// icon_state = "hardsuit0-hos"
// item_color = "hos"
// armor = list(MELEE = 40, BULLET = 15, LASER = 20, ENERGY = 5, BOMB = 15, RAD = 50, FIRE = INFINITY, ACID = INFINITY)
/obj/item/clothing/suit/space/hardsuit/security/hos
name = "head of security's hardsuit"
desc = "A special bulky suit that protects against hazardous, low pressure environments. Has an additional layer of armor."
icon_state = "hardsuit-hos"
armor = list(MELEE = 40, BULLET = 15, LASER = 20, ENERGY = 5, BOMB = 15, RAD = 50, FIRE = INFINITY, ACID = INFINITY)
helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security/hos
jetpack = /obj/item/tank/jetpack/suit
// /obj/item/clothing/suit/space/hardsuit/security/hos
// name = "head of security's hardsuit"
// desc = "A special bulky suit that protects against hazardous, low pressure environments. Has an additional layer of armor."
// icon_state = "hardsuit-hos"
// armor = list(MELEE = 40, BULLET = 15, LASER = 20, ENERGY = 5, BOMB = 15, RAD = 50, FIRE = INFINITY, ACID = INFINITY)
// helmettype = /obj/item/clothing/head/helmet/space/hardsuit/security/hos
// jetpack = /obj/item/tank/jetpack/suit
//Singuloth armor
+1 -20
View File
@@ -723,18 +723,6 @@
item_state = "leathercoat"
resistance_flags = FIRE_PROOF
/obj/item/clothing/suit/browncoat
name = "brown leather coat"
desc = "A long, brown leather coat."
icon_state = "browncoat"
item_state = "browncoat"
/obj/item/clothing/suit/neocoat
name = "black coat"
desc = "A flowing, black coat."
icon_state = "neocoat"
item_state = "neocoat"
/obj/item/clothing/suit/browntrenchcoat
name = "brown trench coat"
desc = "It makes you stand out. Just the opposite of why it's typically worn. Nice try trying to blend in while wearing it."
@@ -792,14 +780,6 @@
name = "white tracksuit"
icon_state = "trackjacketwhite_open"
//actual suits
/obj/item/clothing/suit/creamsuit
name = "cream suit"
desc = "A cream coloured, genteel suit."
icon_state = "creamsuit"
item_state = "creamsuit"
/obj/item/clothing/suit/jacket/miljacket
name = "olive military jacket"
desc = "A canvas jacket styled after classical American military garb. Feels sturdy, yet comfortable. This one comes in olive."
@@ -1194,6 +1174,7 @@
/obj/item/clothing/suit/fluff/noble_coat
name = "noble coat"
desc = "The livid blues, purples and greens are awesome enough to evoke a visceral response in you; it is not dissimilar to indigestion."
icon = 'icons/obj/clothing/suits.dmi'
icon_state = "noble_coat"
item_state = "noble_coat"
body_parts_covered = UPPER_TORSO|LOWER_TORSO|ARMS
+1
View File
@@ -135,6 +135,7 @@
/obj/item/clothing/under/psysuit
name = "dark undersuit"
desc = "A thick, layered grey undersuit lined with power cables. Feels a little like wearing an electrical storm."
icon = 'icons/obj/clothing/under/costumes.dmi'
icon_state = "psysuit"
item_state = "psysuit"
item_color = "psysuit"
+3 -1
View File
@@ -186,7 +186,7 @@
/obj/item/clothing/glasses/sunglasses_fake/fluff/kaki
name = "broken thermonocle"
desc = "A weathered Vox thermonocle, doesn't seem to work anymore."
icon_state = "thermoncle"
icon_state = "thermonocle"
/// Rapidvalj: Hakikarahiti
/obj/item/fluff/rapid_wheelchair_kit
@@ -216,6 +216,7 @@
name = "custom zippo"
desc = "A custom made zippo lighter."
icon = 'icons/obj/custom_items.dmi'
icon_state = null
/// GodOfOreos: Jason Conrad
/obj/item/lighter/zippo/fluff/purple
@@ -1770,6 +1771,7 @@
name = "fluff ring"
desc = "Someone forgot to set this fluff item's description, notify a coder!"
icon = 'icons/obj/custom_items.dmi'
icon_state = null
fluff_material = TRUE
/obj/item/clothing/gloves/ring/fluff/update_icon_state()
-15
View File
@@ -1,15 +0,0 @@
/datum/event/meteor_wave/goreop/announce()
var/meteor_declaration = "MeteorOps have declared their intent to utterly destroy [station_name()] with their own bodies, and dares the crew to try and stop them."
GLOB.major_announcement.Announce(meteor_declaration, "Declaration of 'War'", 'sound/effects/siren.ogg')
/datum/event/meteor_wave/goreop/setup()
waves = 3
/datum/event/meteor_wave/goreop/get_meteor_count()
return 5
/datum/event/meteor_wave/goreop/get_meteors()
return GLOB.meteors_ops
/datum/event/meteor_wave/goreop/end()
GLOB.minor_announcement.Announce("All MeteorOps are dead. Major Station Victory.", "MeteorOps")
@@ -266,15 +266,6 @@ do {\
snack_overlays = 0
top = 0
/obj/item/food/customizable/candy/bar
name = "flavored chocolate bar"
desc = "Made in a factory downtown."
icon_state = "barcustom"
baseicon = "barcustom"
basename = "flavored chocolate bar"
snack_overlays = 0
top = 0
/obj/item/food/customizable/candy/sucker
name = "flavored sucker"
desc = "Suck suck suck."
@@ -1242,7 +1242,7 @@
name = "grape tart"
desc = "A tasty dessert that reminds you of the wine you didn't make."
icon = 'icons/obj/food/bakedgoods.dmi'
icon_state = "grape_tart"
icon_state = "grapetart"
trash = /obj/item/trash/plate
filling_color = "#8c00ff"
bitesize = 3
-1
View File
@@ -313,7 +313,6 @@
name = "hand of cards"
desc = "Some playing cards."
icon = 'icons/obj/playing_cards.dmi'
icon_state = "empty"
w_class = WEIGHT_CLASS_TINY
actions_types = list(/datum/action/item_action/remove_card, /datum/action/item_action/discard)
@@ -74,7 +74,8 @@ GLOBAL_LIST_INIT(marker_beacon_colors, list(
name = "marker beacon"
desc = "A Prism-brand path illumination device. It is anchored in place and glowing steadily."
icon = 'icons/obj/lighting.dmi'
icon_state = "marker"
icon_state = "markerrandom"
base_icon_state = "marker"
layer = BELOW_OPEN_DOOR_LAYER
armor = list(MELEE = 50, BULLET = 75, LASER = 75, ENERGY = 75, BOMB = 25, RAD = 100, FIRE = 25, ACID = 0)
max_integrity = 50
@@ -104,7 +105,7 @@ GLOBAL_LIST_INIT(marker_beacon_colors, list(
/obj/structure/marker_beacon/update_icon_state()
while(!picked_color || !GLOB.marker_beacon_colors[picked_color])
picked_color = pick(GLOB.marker_beacon_colors)
icon_state = "[initial(icon_state)][lowertext(picked_color)]-on"
icon_state = "[base_icon_state][lowertext(picked_color)]-on"
set_light(light_range, light_power, GLOB.marker_beacon_colors[picked_color])
/obj/structure/marker_beacon/attack_hand(mob/living/user)
@@ -150,6 +151,7 @@ GLOBAL_LIST_INIT(marker_beacon_colors, list(
name = "docking beacon"
desc = "An illumination device used to designate docking ports. It is anchored in place and pulsing steadily."
icon_state = "dockingmarker"
base_icon_state = "dockingmarker"
flags = NODECONSTRUCT
/obj/structure/marker_beacon/dock_marker/update_icon_state()
@@ -75,6 +75,7 @@
plane = FULLSCREEN_PLANE
layer = FLASH_LAYER
icon = 'icons/effects/ore_visuals.dmi'
icon_state = null
appearance_flags = 0 //to avoid having TILE_BOUND in the flags, so that the 480x480 icon states let you see it no matter where you are
duration = 35
pixel_x = -224
+12 -6
View File
@@ -2,7 +2,8 @@
gender = PLURAL
layer = PROJECTILE_HIT_THRESHHOLD_LAYER //sporangiums up don't shoot
icon = 'icons/obj/lavaland/ash_flora.dmi'
icon_state = "l_mushroom"
icon_state = "l_mushroom1"
base_icon_state = "l_mushroom"
name = "large mushrooms"
desc = "A number of large mushrooms, covered in a faint layer of ash and what can only be spores."
anchored = TRUE
@@ -24,7 +25,7 @@
/obj/structure/flora/ash/Initialize(mapload)
. = ..()
base_icon = "[icon_state][rand(1, 4)]"
base_icon = "[base_icon_state][rand(1, 4)]"
icon_state = base_icon
/obj/structure/flora/ash/proc/harvest(user)
@@ -80,7 +81,8 @@
regrowth_time_low = 4200
/obj/structure/flora/ash/leaf_shroom
icon_state = "s_mushroom"
icon_state = "s_mushroom1"
base_icon_state = "s_mushroom"
name = "leafy mushrooms"
desc = "A number of mushrooms, each of which surrounds a greenish sporangium with a number of leaf-like structures."
harvested_name = "leafless mushrooms"
@@ -96,7 +98,8 @@
regrowth_time_high = 6000
/obj/structure/flora/ash/cap_shroom
icon_state = "r_mushroom"
icon_state = "r_mushroom1"
base_icon_state = "r_mushroom"
name = "tall mushrooms"
desc = "Several mushrooms, the larger of which have a ring of conks at the midpoint of their stems."
harvested_name = "small mushrooms"
@@ -111,7 +114,8 @@
regrowth_time_high = 5400
/obj/structure/flora/ash/stem_shroom
icon_state = "t_mushroom"
icon_state = "t_mushroom1"
base_icon_state = "t_mushroom"
name = "numerous mushrooms"
desc = "A large number of mushrooms, some of which have long, fleshy stems. They're radiating light!"
light_range = 1.5
@@ -128,7 +132,8 @@
regrowth_time_high = 6000
/obj/structure/flora/ash/cacti
icon_state = "cactus"
icon_state = "cactus1"
base_icon_state = "cactus"
name = "fruiting cacti"
desc = "Several prickly cacti, brimming with ripe fruit and covered in a thin layer of ash."
harvested_name = "cacti"
@@ -156,6 +161,7 @@
name = "large rock"
desc = "A volcanic rock. Pioneers used to ride these babies for miles."
icon_state = "basalt1"
base_icon_state = "basalt"
density = TRUE
resistance_flags = FIRE_PROOF
harvest = /obj/item/stack/ore/glass/basalt
@@ -344,6 +344,7 @@
desc = "a hook."
projectile_type = /obj/item/projectile/hook
caliber = "hook"
icon = 'icons/obj/lavaland/artefacts.dmi'
icon_state = "hook"
muzzle_flash_effect = null
@@ -1,7 +1,7 @@
/obj/item/robot_module
name = "robot module"
icon = 'icons/obj/module.dmi'
icon_state = "std_module"
icon_state = "std_mod"
w_class = 100
item_state = "electronic"
flags = CONDUCT
@@ -560,6 +560,7 @@ Difficulty: Hard
/obj/effect/temp_visual/bubblegum_hands
icon = 'icons/effects/bubblegum.dmi'
icon_state = null
duration = 9
/obj/effect/temp_visual/bubblegum_hands/rightthumb
+1 -1
View File
@@ -107,7 +107,7 @@
/obj/item/holder/pai
name = "pAI"
desc = "It's a little robot."
icon_state = "pai"
icon_state = null
/obj/item/holder/mouse
name = "mouse"
-1
View File
@@ -1,7 +1,6 @@
/obj/item/mod/construction
desc = "A part used in MOD construction. You could insert it into a MOD shell."
icon = 'icons/obj/clothing/modsuit/mod_construction.dmi'
icon_state = "rack_parts"
/obj/item/mod/construction/helmet
name = "MOD helmet"
+1 -1
View File
@@ -8,7 +8,7 @@
/obj/item/mod/control
name = "MOD control unit"
desc = "The control unit of a Modular Outerwear Device, a powered suit that protects against various environments."
icon_state = "mod_control"
icon_state = null
item_state = "mod_control"
base_icon_state = "control"
w_class = WEIGHT_CLASS_BULKY
File diff suppressed because one or more lines are too long
-1
View File
@@ -1,6 +1,5 @@
// Special AI/pAI PDAs that cannot explode.
/obj/item/pda/silicon
icon_state = "NONE"
detonate = FALSE
ttone = "data"
@@ -3,6 +3,7 @@
name = "Nar'sie's Avatar"
desc = "Your mind begins to bubble and ooze as it tries to comprehend what it sees."
icon = 'icons/obj/magic_terror.dmi'
icon_state = null
pixel_x = -89
pixel_y = -85
current_size = 9 //It moves/eats like a max-size singulo, aside from range. --NEO
@@ -18,6 +19,7 @@
/obj/singularity/narsie/large
name = "Nar'Sie"
icon = 'icons/obj/narsie.dmi'
icon_state = "narsie"
// Pixel stuff centers Narsie.
pixel_x = -236
pixel_y = -256
@@ -63,7 +63,7 @@ So, hopefully this is helpful if any more icons are to be added/changed/wonderin
name = "Particle Accelerator"
desc = "Part of a Particle Accelerator."
icon = 'icons/obj/machines/particle_accelerator.dmi'
icon_state = "none"
icon_state = null
anchored = FALSE
density = TRUE
max_integrity = 500
@@ -222,7 +222,6 @@ So, hopefully this is helpful if any more icons are to be added/changed/wonderin
name = "Particle Accelerator"
desc = "Part of a Particle Accelerator."
icon = 'icons/obj/machines/particle_accelerator.dmi'
icon_state = "none"
anchored = FALSE
density = TRUE
power_state = NO_POWER_USE
@@ -2,7 +2,7 @@
name = "EM Containment Grid"
desc_holder = "This part launches the Alpha particles. You might not want to stand near this end."
icon = 'icons/obj/machines/particle_accelerator.dmi'
icon_state = "none"
icon_state = null
var/fire_delay = 50
var/last_shot = 0
@@ -1,7 +1,7 @@
/obj/item/gun/throw/piecannon
name = "pie cannon"
desc = "A projectile weapon that fires pies."
icon_state = "piecannon"
icon_state = "piecannon1"
w_class = WEIGHT_CLASS_HUGE
throw_speed = 2
throw_range = 3
@@ -6,8 +6,6 @@
var/base_name = " "
desc = " "
icon = 'icons/obj/chemical.dmi'
icon_state = "null"
item_state = "null"
amount_per_transfer_from_this = 10
possible_transfer_amounts = list(5,10,15,25,30,50)
volume = 50
+1 -1
View File
@@ -2,7 +2,7 @@
name = "Dispenser"
desc = "..."
icon = 'icons/obj/objects.dmi'
icon_state = "watertank"
icon_state = "water"
density = TRUE
pressure_resistance = 2*ONE_ATMOSPHERE
container_type = DRAINABLE | AMOUNT_VISIBLE
@@ -42,23 +42,6 @@
linked = null
. = ..()
/obj/effect/clockwork/overlay/wall
name = "clockwork wall"
icon = 'icons/turf/walls/clockwork_wall.dmi'
icon_state = "clockwork_wall"
canSmoothWith = list(SMOOTH_GROUP_WALLS, SMOOTH_GROUP_BRASS_WALL)
smoothing_flags = SMOOTH_CORNERS
layer = CLOSED_TURF_LAYER
/obj/effect/clockwork/overlay/wall/Initialize(mapload)
. = ..()
QUEUE_SMOOTH_NEIGHBORS(src)
QUEUE_SMOOTH(src)
/obj/effect/clockwork/overlay/wall/Destroy()
QUEUE_SMOOTH_NEIGHBORS(src)
return ..()
/obj/effect/clockwork/overlay/floor
icon = 'icons/turf/floors.dmi'
icon_state = "clockwork_floor"
@@ -167,7 +150,7 @@
. = ..()
if(randomsinglesprite)
replace_name_desc()
icon_state = "[icon_state][rand(1, randomspritemax)]"
icon_state = "[base_icon_state][rand(1, randomspritemax)]"
pixel_x = rand(-sprite_shift, sprite_shift)
pixel_y = rand(-sprite_shift, sprite_shift)
@@ -185,17 +168,20 @@
w_class = WEIGHT_CLASS_TINY
randomsinglesprite = TRUE
icon_state = "shard_large"
base_icon_state = "shard_large"
sprite_shift = 9
/obj/item/clockwork/alloy_shards/medium
w_class = WEIGHT_CLASS_TINY
randomsinglesprite = TRUE
icon_state = "shard_medium"
base_icon_state = "shard_medium"
sprite_shift = 10
/obj/item/clockwork/alloy_shards/medium/gear_bit
randomspritemax = 4
icon_state = "gear_bit"
icon_state = "gear_bit1"
base_icon_state = "gear_bit"
sprite_shift = 12
/obj/item/clockwork/alloy_shards/medium/gear_bit/replace_name_desc()
@@ -214,6 +200,7 @@
randomsinglesprite = TRUE
randomspritemax = 3
icon_state = "shard_small"
base_icon_state = "shard_small"
sprite_shift = 12
/obj/item/clockwork/alloy_shards/pinion_lock
@@ -1,6 +1,6 @@
/obj/item/organ/internal/alien
origin_tech = "biotech=5"
icon_state = "xgibmid2"
icon_state = null
var/list/alien_powers = list()
var/list/human_powers = list()
tough = TRUE
+1
View File
@@ -17,6 +17,7 @@
#include "log_format.dm"
#include "map_templates.dm"
#include "map_tests.dm"
#include "missing_icons.dm"
#include "origin_tech.dm"
#include "purchase_reference_test.dm"
#include "reagent_id_typos.dm"
+45
View File
@@ -0,0 +1,45 @@
/// Makes sure objects actually have icons that exist!
/datum/unit_test/missing_icons
var/static/list/possible_icon_states = list()
/datum/unit_test/missing_icons/proc/generate_possible_icon_states_list(directory_path = "icons/obj/")
for(var/file_path in flist(directory_path))
if(findtext(file_path, ".dmi"))
for(var/sprite_icon in icon_states("[directory_path][file_path]", 1)) //2nd arg = 1 enables 64x64+ icon support, otherwise you'll end up with "sword0_1" instead of "sword"
possible_icon_states[sprite_icon] += list("[directory_path][file_path]")
else
possible_icon_states += generate_possible_icon_states_list("[directory_path][file_path]")
/datum/unit_test/missing_icons/Run()
generate_possible_icon_states_list()
generate_possible_icon_states_list("icons/effects/")
//Add EVEN MORE paths if needed here!
//generate_possible_icon_states_list("your/folder/path/")
var/list/bad_list = list()
for(var/obj/obj_path as anything in subtypesof(/obj)) // maybe someday a subtype of this test can cover mobs too (hell maybe atom/movable)
if(initial(obj_path.flags) & ABSTRACT)
continue
var/icon = initial(obj_path.icon)
if(isnull(icon))
continue
var/icon_state = initial(obj_path.icon_state)
if(isnull(icon_state))
continue
if(length(bad_list) && (icon_state in bad_list[icon]))
continue
if(icon_exists(icon, icon_state))
continue
bad_list[icon] += list(icon_state)
var/match_message
if(icon_state in possible_icon_states)
for(var/file_place in possible_icon_states[icon_state])
match_message += (match_message ? " & '[file_place]'" : " - Matching sprite found in: '[file_place]'")
Fail("Missing icon_state for [obj_path] in '[icon]'.\n\ticon_state = \"[icon_state]\"[match_message]")
@@ -2,7 +2,7 @@
name = "generic vehicle"
desc = "Yell at coding chat."
icon = 'icons/obj/tgvehicles.dmi'
icon_state = "error"
icon_state = null
max_integrity = 300
armor = list(MELEE = 30, BULLET = 30, LASER = 30, ENERGY = 0, BOMB = 30, RAD = 0, FIRE = 60, ACID = 60)
density = TRUE
+1 -1
View File
@@ -3,7 +3,7 @@
name = "vehicle"
desc = "A basic vehicle, vroom!"
icon = 'icons/obj/vehicles.dmi'
icon_state = "scooter"
icon_state = null
density = TRUE
anchored = FALSE
can_buckle = TRUE
Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 990 B

-1
View File
@@ -1868,7 +1868,6 @@
#include "code\modules\events\koi_mirgration.dm"
#include "code\modules\events\mass_hallucination.dm"
#include "code\modules\events\meaty_gore.dm"
#include "code\modules\events\meaty_ops.dm"
#include "code\modules\events\meaty_ores.dm"
#include "code\modules\events\meteors_event.dm"
#include "code\modules\events\money_spam.dm"