diff --git a/code/game/objects/items/devices/flash.dm b/code/game/objects/items/devices/flash.dm index aacb901b..8988e89a 100644 --- a/code/game/objects/items/devices/flash.dm +++ b/code/game/objects/items/devices/flash.dm @@ -91,6 +91,26 @@ if(safety <= 0) M.Weaken(10) flick("e_flash", M.flash) + //Vaurca damage 18-09-15 + var/mob/living/carbon/human/H = M + if(H.species.flags & IS_BUG) + var/datum/organ/internal/eyes/E = H.internal_organs_by_name["eyes"] + if(!E) + return + //Reworked damage 19/09/15 + usr << "\red Your eyes burn with the intense light of the flash!." + E.damage += rand(10, 11) + if(E.damage > 12) + M.eye_blurry += rand(3,6) + if (E.damage >= E.min_broken_damage) + M.sdisabilities |= BLIND + else if (E.damage >= E.min_bruised_damage) + M.eye_blind = 5 + M.eye_blurry = 5 + M.disabilities |= NEARSIGHTED + spawn(100) + M.disabilities &= ~NEARSIGHTED + if(ishuman(M) && ishuman(user) && M.stat!=DEAD) if(user.mind && user.mind in ticker.mode.head_revolutionaries && ticker.mode.name == "revolution") diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index bc7bec90..cedf42d0 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -484,6 +484,15 @@ else if(L.is_bruised()) safe_pressure_min *= 1.25 + if(species.has_organ["breathing apparatus"]) + var/datum/organ/internal/vaurca/breathingapparatus/L = internal_organs_by_name["breathing apparatus"] + if(!L) + safe_pressure_min = INFINITY //No wannabe-lungs, how are you breathing? FOR VAURCA + else if(L.is_broken()) + safe_pressure_min *= 1.5 + else if(L.is_bruised()) + safe_pressure_min *= 1.25 + var/safe_exhaled_max = 10 var/safe_toxins_max = 0.005 var/SA_para_min = 1 diff --git a/code/modules/mob/living/carbon/human/say.dm b/code/modules/mob/living/carbon/human/say.dm index 4527b486..f42df022 100644 --- a/code/modules/mob/living/carbon/human/say.dm +++ b/code/modules/mob/living/carbon/human/say.dm @@ -1,4 +1,4 @@ -/mob/living/carbon/human/say(var/message) +/mob/living/carbon/human/say(var/message, var/usergen = 0) var/verb = "says" var/alt_name = "" @@ -24,7 +24,7 @@ var/message_mode = parse_message_mode(message, "headset") if(copytext(message,1,2) == "*") - return emote(copytext(message,2)) + return emote(copytext(message,2),usergen) if(name != GetVoice()) alt_name = "(as [get_id_name("Unknown")])" diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 6fc004aa..037538a9 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -619,8 +619,8 @@ See code\modules\mob\new_player\preferences_setup.dm for where it's used. name = "Vaurca" name_plural = "varucae" - icobase = 'icons/mob/human_races/r_machine.dmi' //placeholders - deform = 'icons/mob/human_races/r_machine.dmi' //bloop blop butts + icobase = 'icons/mob/human_races/r_vaurca.dmi' //Experimental as fuck + deform = 'icons/mob/human_races/r_vaurca.dmi' //bloop blop butts language = "Vaurcese" unarmed_type = /datum/unarmed_attack/claws //literally butts secondary_unarmed_type = /datum/unarmed_attack/bite/strong @@ -645,7 +645,7 @@ See code\modules\mob\new_player\preferences_setup.dm for where it's used. flags = IS_WHITELISTED | NO_SLIP | IS_BUG //IS_BUG doesn't do much at the moment. proc up top + radiation resistance. //use IS_BUG when you do the make their eyes die from being flashed thing, sounds/skull. okay thanks. - blood_color = "#1F181F" // note: discover hex for yellow + blood_color = "#E6E600" // dark yellow flesh_color = "#575757" //this is a placeholder also. inherent_verbs = list( @@ -653,6 +653,16 @@ See code\modules\mob\new_player\preferences_setup.dm for where it's used. ) //make has_organ list when we can be bothered with bug gut sprites. it'll be cool, i promise + has_organ = list( + "neural socket" = /datum/organ/internal/vaurca/neuralsocket, + "breathing apparatus" = /datum/organ/internal/vaurca/breathingapparatus, + "heart" = /datum/organ/internal/heart, + "second heart" = /datum/organ/internal/heart, + "liver" = /datum/organ/internal/liver, + "kidneys" = /datum/organ/internal/kidney, + "brain" = /datum/organ/internal/brain, + "eyes" = /datum/organ/internal/eyes, +) // Called when using the shredding behavior. /datum/species/proc/can_shred(var/mob/living/carbon/human/H) diff --git a/code/modules/organs/organ_alien.dm b/code/modules/organs/organ_alien.dm index f57ac777..be1de6e6 100644 --- a/code/modules/organs/organ_alien.dm +++ b/code/modules/organs/organ_alien.dm @@ -347,3 +347,29 @@ Eyes.brute = organ_data.damage del(src) return Eyes + +/obj/item/organ/vaurca/neuralsocket + name = "neural socket" + organ_tag = "neural socket" + icon = 'icons/mob/alien_organs.dmi' //placeholder + icon_state = "neural_socket" //placeholder + +/obj/item/organ/vaurca/neuralsocket/removed() + return + +/obj/item/organ/vaurca/breathingapparatus + name = "breathing apparatus" + organ_tag = "breathing apparatus" + icon = 'icons/mob/alien_organs.dmi' //placeholder + icon_state = "breathing_app" //placeholder + +/obj/item/organ/vaurca/breathingapparatus/removed() + return + +/obj/item/organ/vaurca/tracheae + name = "tracheae" + organ_tag = "tracheae" + icon = 'icons/mob/alien_organs.dmi' //placeholder + icon_state = "tracheae" //placeholder +/obj/item/organ/vaurca/tracheae/removed() + return diff --git a/code/modules/organs/organ_internal.dm b/code/modules/organs/organ_internal.dm index d6a26a1a..5907efd5 100644 --- a/code/modules/organs/organ_internal.dm +++ b/code/modules/organs/organ_internal.dm @@ -324,3 +324,21 @@ organ_holder = removed_organ return removed_organ + + + //VAURCA EXPERIMENTAL +/datum/organ/internal/vaurca/process() + return + +/datum/organ/internal/vaurca/neuralsocket + name = "neural socket" + parent_organ = "head" + robotic = 2 + removed_type = /obj/item/organ/vaurca/neuralsocket +/datum/organ/internal/vaurca/breathingapparatus + name = "breathing apparatus" + parent_organ = "chest" + robotic = 2 + removed_type = /obj/item/organ/vaurca/breathingapparatus + + diff --git a/icons/mob/alien_organs.dmi b/icons/mob/alien_organs.dmi new file mode 100644 index 00000000..40ede63e Binary files /dev/null and b/icons/mob/alien_organs.dmi differ diff --git a/icons/mob/human_races/r_vaurca.dmi b/icons/mob/human_races/r_vaurca.dmi new file mode 100644 index 00000000..9c2dcb55 Binary files /dev/null and b/icons/mob/human_races/r_vaurca.dmi differ