Bleeding edgy refresh (#303)
* not code stuff * other things * global vars, defines, helpers * onclick hud stuff, orphans, world.dm * controllers and datums * game folder * everything not client/mobs in modules * client folder * stage 1 mob stuff * simple animal things * silicons * carbon things * ayylmaos and monkeys * hyoomahn * icons n shit * sprite fixes * compile fixes * some fixes I cherrypicked. * qdel fixes * forgot brain refractors
This commit is contained in:
+36
-38
@@ -90,6 +90,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
|
||||
var/block_chance = 0
|
||||
var/hit_reaction_chance = 0 //If you want to have something unrelated to blocking/armour piercing etc. Maybe not needed, but trying to think ahead/allow more freedom
|
||||
var/reach = 1 //In tiles, how far this weapon can reach; 1 for adjacent, which is default
|
||||
|
||||
//The list of slots by priority. equip_to_appropriate_slot() uses this list. Doesn't matter if a mob type doesn't have a slot.
|
||||
var/list/slot_equipment_priority = null // for default list, see /mob/proc/equip_to_appropriate_slot()
|
||||
@@ -98,7 +99,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
// non-clothing items
|
||||
var/datum/dog_fashion/dog_fashion = null
|
||||
|
||||
/obj/item/New()
|
||||
/obj/item/Initialize()
|
||||
if (!materials)
|
||||
materials = list()
|
||||
..()
|
||||
@@ -160,7 +161,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
else
|
||||
pronoun = "It is"
|
||||
var/size = weightclass2text(src.w_class)
|
||||
user << "[pronoun] a [size] item." //e.g. They are a small item. or It is a bulky item.
|
||||
to_chat(user, "[pronoun] a [size] item." )
|
||||
|
||||
if(user.research_scanner) //Mob has a research scanner active.
|
||||
var/msg = "*--------* <BR>"
|
||||
@@ -181,7 +182,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
else
|
||||
msg += "<span class='danger'>No extractable materials detected.</span><BR>"
|
||||
msg += "*--------*"
|
||||
user << msg
|
||||
to_chat(user, msg)
|
||||
|
||||
|
||||
/obj/item/attack_self(mob/user)
|
||||
@@ -209,9 +210,9 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
if(istype(C))
|
||||
if(C.gloves && (C.gloves.max_heat_protection_temperature > 360))
|
||||
extinguish()
|
||||
user << "<span class='notice'>You put out the fire on [src].</span>"
|
||||
to_chat(user, "<span class='notice'>You put out the fire on [src].</span>")
|
||||
else
|
||||
user << "<span class='warning'>You burn your hand on [src]!</span>"
|
||||
to_chat(user, "<span class='warning'>You burn your hand on [src]!</span>")
|
||||
var/obj/item/bodypart/affecting = C.get_bodypart("[(user.active_hand_index % 2 == 0) ? "r" : "l" ]_arm")
|
||||
if(affecting && affecting.receive_damage( 0, 5 )) // 5 burn damage
|
||||
C.update_damage_overlays()
|
||||
@@ -223,7 +224,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
var/mob/living/carbon/C = user
|
||||
if(istype(C))
|
||||
if(!C.gloves || (!(C.gloves.resistance_flags & (UNACIDABLE|ACID_PROOF))))
|
||||
user << "<span class='warning'>The acid on [src] burns your hand!</span>"
|
||||
to_chat(user, "<span class='warning'>The acid on [src] burns your hand!</span>")
|
||||
var/obj/item/bodypart/affecting = C.get_bodypart("[(user.active_hand_index % 2 == 0) ? "r" : "l" ]_arm")
|
||||
if(affecting && affecting.receive_damage( 0, 5 )) // 5 burn damage
|
||||
C.update_damage_overlays()
|
||||
@@ -273,7 +274,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
if(!A.has_fine_manipulation)
|
||||
if(src in A.contents) // To stop Aliens having items stuck in their pockets
|
||||
A.dropItemToGround(src)
|
||||
user << "<span class='warning'>Your claws aren't capable of such fine manipulation!</span>"
|
||||
to_chat(user, "<span class='warning'>Your claws aren't capable of such fine manipulation!</span>")
|
||||
return
|
||||
attack_paw(A)
|
||||
|
||||
@@ -291,35 +292,32 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
// I have cleaned it up a little, but it could probably use more. -Sayu
|
||||
// The lack of ..() is intentional, do not add one
|
||||
/obj/item/attackby(obj/item/weapon/W, mob/user, params)
|
||||
if(unique_rename && istype(W, /obj/item/weapon/pen))
|
||||
rewrite(user)
|
||||
else
|
||||
if(istype(W,/obj/item/weapon/storage))
|
||||
var/obj/item/weapon/storage/S = W
|
||||
if(S.use_to_pickup)
|
||||
if(S.collection_mode) //Mode is set to collect multiple items on a tile and we clicked on a valid one.
|
||||
if(isturf(loc))
|
||||
var/list/rejections = list()
|
||||
if(istype(W,/obj/item/weapon/storage))
|
||||
var/obj/item/weapon/storage/S = W
|
||||
if(S.use_to_pickup)
|
||||
if(S.collection_mode) //Mode is set to collect multiple items on a tile and we clicked on a valid one.
|
||||
if(isturf(loc))
|
||||
var/list/rejections = list()
|
||||
|
||||
var/list/things = loc.contents.Copy()
|
||||
if (S.collection_mode == 2)
|
||||
things = typecache_filter_list(things, typecacheof(type))
|
||||
var/list/things = loc.contents.Copy()
|
||||
if (S.collection_mode == 2)
|
||||
things = typecache_filter_list(things, typecacheof(type))
|
||||
|
||||
var/len = things.len
|
||||
if(!len)
|
||||
user << "<span class='notice'>You failed to pick up anything with [S].</span>"
|
||||
return
|
||||
var/datum/progressbar/progress = new(user, len, loc)
|
||||
var/len = things.len
|
||||
if(!len)
|
||||
to_chat(user, "<span class='notice'>You failed to pick up anything with [S].</span>")
|
||||
return
|
||||
var/datum/progressbar/progress = new(user, len, loc)
|
||||
|
||||
while (do_after(user, 10, TRUE, S, FALSE, CALLBACK(src, .proc/handle_mass_pickup, S, things, loc, rejections, progress)))
|
||||
sleep(1)
|
||||
while (do_after(user, 10, TRUE, S, FALSE, CALLBACK(src, .proc/handle_mass_pickup, S, things, loc, rejections, progress)))
|
||||
sleep(1)
|
||||
|
||||
qdel(progress)
|
||||
qdel(progress)
|
||||
|
||||
user << "<span class='notice'>You put everything you could [S.preposition] [S].</span>"
|
||||
to_chat(user, "<span class='notice'>You put everything you could [S.preposition] [S].</span>")
|
||||
|
||||
else if(S.can_be_inserted(src))
|
||||
S.handle_item_insertion(src)
|
||||
else if(S.can_be_inserted(src))
|
||||
S.handle_item_insertion(src)
|
||||
|
||||
/obj/item/proc/handle_mass_pickup(obj/item/weapon/storage/S, list/things, atom/thing_loc, list/rejections, datum/progressbar/progress)
|
||||
for(var/obj/item/I in things)
|
||||
@@ -438,22 +436,22 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
(H.wear_mask && H.wear_mask.flags_cover & MASKCOVERSEYES) || \
|
||||
(H.glasses && H.glasses.flags_cover & GLASSESCOVERSEYES))
|
||||
// you can't stab someone in the eyes wearing a mask!
|
||||
user << "<span class='danger'>You're going to need to remove that mask/helmet/glasses first!</span>"
|
||||
to_chat(user, "<span class='danger'>You're going to need to remove that mask/helmet/glasses first!</span>")
|
||||
return
|
||||
|
||||
if(ismonkey(M))
|
||||
var/mob/living/carbon/monkey/Mo = M
|
||||
if(Mo.wear_mask && Mo.wear_mask.flags_cover & MASKCOVERSEYES)
|
||||
// you can't stab someone in the eyes wearing a mask!
|
||||
user << "<span class='danger'>You're going to need to remove that mask/helmet/glasses first!</span>"
|
||||
to_chat(user, "<span class='danger'>You're going to need to remove that mask/helmet/glasses first!</span>")
|
||||
return
|
||||
|
||||
if(isalien(M))//Aliens don't have eyes./N slimes also don't have eyes!
|
||||
user << "<span class='warning'>You cannot locate any eyes on this creature!</span>"
|
||||
to_chat(user, "<span class='warning'>You cannot locate any eyes on this creature!</span>")
|
||||
return
|
||||
|
||||
if(isbrain(M))
|
||||
user << "<span class='danger'>You cannot locate any organic eyes on this brain!</span>"
|
||||
to_chat(user, "<span class='danger'>You cannot locate any organic eyes on this brain!</span>")
|
||||
return
|
||||
|
||||
src.add_fingerprint(user)
|
||||
@@ -484,20 +482,20 @@ var/global/image/fire_overlay = image("icon" = 'icons/effects/fire.dmi', "icon_s
|
||||
if(M.eye_damage >= 10)
|
||||
M.adjust_blurriness(15)
|
||||
if(M.stat != DEAD)
|
||||
M << "<span class='danger'>Your eyes start to bleed profusely!</span>"
|
||||
to_chat(M, "<span class='danger'>Your eyes start to bleed profusely!</span>")
|
||||
if(!(M.disabilities & (NEARSIGHT | BLIND)))
|
||||
if(M.become_nearsighted())
|
||||
M << "<span class='danger'>You become nearsighted!</span>"
|
||||
to_chat(M, "<span class='danger'>You become nearsighted!</span>")
|
||||
if(prob(50))
|
||||
if(M.stat != DEAD)
|
||||
if(M.drop_item())
|
||||
M << "<span class='danger'>You drop what you're holding and clutch at your eyes!</span>"
|
||||
to_chat(M, "<span class='danger'>You drop what you're holding and clutch at your eyes!</span>")
|
||||
M.adjust_blurriness(10)
|
||||
M.Paralyse(1)
|
||||
M.Weaken(2)
|
||||
if (prob(M.eye_damage - 10 + 1))
|
||||
if(M.become_blind())
|
||||
M << "<span class='danger'>You go blind!</span>"
|
||||
to_chat(M, "<span class='danger'>You go blind!</span>")
|
||||
|
||||
/obj/item/clean_blood()
|
||||
. = ..()
|
||||
|
||||
Reference in New Issue
Block a user