Chaplain has a regular bible instead of one filled with space cash and booze.

(non-working) Code included for slashing messages/sounds to replace punching for the Tajaran. Unable to make work yet.
Tajaran have universal_speak to 1 by default now.
Tajaran are able to see in the dark now.
This commit is contained in:
misterfox
2012-03-15 14:44:52 -04:00
parent ab063d24f7
commit 12c3112d21
9 changed files with 39 additions and 16 deletions

View File

@@ -31,6 +31,7 @@
for(var/datum/disease/D in O.viruses) for(var/datum/disease/D in O.viruses)
D.affected_mob = O D.affected_mob = O
O.flavor_text = flavor_text O.flavor_text = flavor_text
O.universal_speak = 1 //hacky fix until someone can figure out how to make them only understand humans
if (client) if (client)
client.mob = O client.mob = O

View File

@@ -5,6 +5,7 @@
icon = 'tajaran.dmi' icon = 'tajaran.dmi'
var/list/tajspeak_letters var/list/tajspeak_letters
// //
universal_speak = 1 //hacky fix until someone can figure out how to make them only understand humans
taj_talk_understand = 1 taj_talk_understand = 1
voice_message = "mrowls" voice_message = "mrowls"

View File

@@ -185,7 +185,7 @@
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src) var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
new /obj/item/weapon/storage/box(BPK) new /obj/item/weapon/storage/box(BPK)
new /obj/item/weapon/pen(src) new /obj/item/weapon/pen(src)
new /obj/item/weapon/storage/bible/booze(src) new /obj/item/weapon/storage/bible(src)
new /obj/item/device/pda/chaplain(src) new /obj/item/device/pda/chaplain(src)
new /obj/item/device/radio/headset(src) new /obj/item/device/radio/headset(src)
new /obj/item/clothing/shoes/black(src) new /obj/item/clothing/shoes/black(src)

View File

@@ -13,7 +13,7 @@
equip(var/mob/living/carbon/human/H) equip(var/mob/living/carbon/human/H)
if(!H) return 0 if(!H) return 0
var/obj/item/weapon/storage/bible/B = new /obj/item/weapon/storage/bible/booze(H) var/obj/item/weapon/storage/bible/B = new /obj/item/weapon/storage/bible(H)
H.equip_if_possible(B, H.slot_l_hand) H.equip_if_possible(B, H.slot_l_hand)
H.equip_if_possible(new /obj/item/device/pda/chaplain(H), H.slot_belt) H.equip_if_possible(new /obj/item/device/pda/chaplain(H), H.slot_belt)
H.equip_if_possible(new /obj/item/clothing/under/rank/chaplain(H), H.slot_w_uniform) H.equip_if_possible(new /obj/item/clothing/under/rank/chaplain(H), H.slot_w_uniform)
@@ -44,13 +44,6 @@
B.name = "The Book of Lorgar" B.name = "The Book of Lorgar"
if("imperium") if("imperium")
B.name = "Uplifting Primer" B.name = "Uplifting Primer"
if("toolboxia")
B.name = "Toolbox Manifesto"
if("homosexuality")
B.name = "Guys Gone Wild"
if("lol", "wtf", "gay", "penis", "ass", "poo", "badmin", "shitmin", "deadmin", "cock", "cocks")
B.name = pick("Woodys Got Wood: The Aftermath", "War of the Cocks", "Sweet Bro and Hella Jef: Expanded Edition")
H.brainloss = 100 // starts off retarded as fuck
if("science") if("science")
B.name = pick("Principle of Relativity", "Quantum Enigma: Physics Encounters Consciousness", "Programming the Universe", "Quantum Physics and Theology", "String Theory for Dummies", "How To: Build Your Own Warp Drive", "The Mysteries of Bluespace", "Playing God: Collector's Edition") B.name = pick("Principle of Relativity", "Quantum Enigma: Physics Encounters Consciousness", "Programming the Universe", "Quantum Physics and Theology", "String Theory for Dummies", "How To: Build Your Own Warp Drive", "The Mysteries of Bluespace", "Playing God: Collector's Edition")
else else

View File

@@ -123,7 +123,7 @@
var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src) var/obj/item/weapon/storage/backpack/BPK = new /obj/item/weapon/storage/backpack(src)
var/obj/item/weapon/storage/box/B = new(BPK) var/obj/item/weapon/storage/box/B = new(BPK)
new /obj/item/weapon/pen(B) new /obj/item/weapon/pen(B)
new /obj/item/weapon/storage/bible/booze(src) new /obj/item/weapon/storage/bible(src)
new /obj/item/device/pda/chaplain(src) new /obj/item/device/pda/chaplain(src)
new /obj/item/device/radio/headset(src) new /obj/item/device/radio/headset(src)
new /obj/item/weapon/candlepack(src) new /obj/item/weapon/candlepack(src)

View File

@@ -32,6 +32,11 @@ Contains the procs that control attacking critters
O.show_message("\red <B>[user] has slashed at [src]!</B>", 1) O.show_message("\red <B>[user] has slashed at [src]!</B>", 1)
playsound(src.loc, 'slice.ogg', 25, 1, -1) playsound(src.loc, 'slice.ogg', 25, 1, -1)
else if(user.type == /mob/living/carbon/human/tajaran)
for(var/mob/O in viewers(src, null))
O.show_message("\red <B>[user] has slashed at [src]!</B>", 1)
playsound(src.loc, 'slice.ogg', 25, 1, -1)
else else
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("\red <B>[user] has bit [src]!</B>", 1) O.show_message("\red <B>[user] has bit [src]!</B>", 1)

View File

@@ -74,8 +74,8 @@
if("hurt") if("hurt")
M.attack_log += text("\[[time_stamp()]\] <font color='red'>Punched [src.name] ([src.ckey])</font>") M.attack_log += text("\[[time_stamp()]\] <font color='red'>Punched [src.name] ([src.ckey])</font>")
src.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been punched by [M.name] ([M.ckey])</font>") src.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been punched by [M.name] ([M.ckey])</font>")
log_admin("ATTACK: [src] ([src.ckey]) punched [M] ([M.ckey]).") log_admin("ATTACK: [M] ([M.ckey]) punched [src] ([src.ckey]).")
message_admins("ATTACK: [src] ([src.ckey]) punched [M] ([M.ckey]).") message_admins("ATTACK: [M] ([M.ckey]) punched [src] ([src.ckey]).")
var/attack_verb var/attack_verb
switch(M.mutantrace) switch(M.mutantrace)
@@ -86,16 +86,25 @@
else else
attack_verb = "punch" attack_verb = "punch"
if(src.type == /mob/living/carbon/human/tajaran)
attack_verb = "slash"
var/damage = rand(0, 9) var/damage = rand(0, 9)
if(!damage) if(!damage)
playsound(loc, 'punchmiss.ogg', 25, 1, -1) if(src.type != /mob/living/carbon/human/tajaran)
playsound(loc, 'punchmiss.ogg', 25, 1, -1)
else if (src.type == /mob/living/carbon/human/tajaran)
playsound(loc, 'slashmiss.ogg', 25, 1, -1)
visible_message("\red <B>[M] has attempted to [attack_verb] [src]!</B>") visible_message("\red <B>[M] has attempted to [attack_verb] [src]!</B>")
return 0 return 0
var/datum/organ/external/affecting = get_organ(ran_zone(M.zone_sel.selecting)) var/datum/organ/external/affecting = get_organ(ran_zone(M.zone_sel.selecting))
var/armor_block = run_armor_check(affecting, "melee") var/armor_block = run_armor_check(affecting, "melee")
if(M.mutations & HULK) damage += 5 if(M.mutations & HULK) damage += 5
playsound(loc, "punch", 25, 1, -1) if(src.type != /mob/living/carbon/human/tajaran)
playsound(loc, "punch", 25, 1, -1)
else if (src.type == /mob/living/carbon/human/tajaran)
playsound(loc, 'slice.ogg', 25, 1, -1)
visible_message("\red <B>[M] has [attack_verb]ed [src]!</B>") visible_message("\red <B>[M] has [attack_verb]ed [src]!</B>")

View File

@@ -975,6 +975,11 @@
if(!druggy) if(!druggy)
see_invisible = 2 see_invisible = 2
else if (type == /mob/living/carbon/human/tajaran)
// sight |= SEE_MOBS
// sight |= SEE_OBJS
see_in_dark = 8
else if (seer) else if (seer)
var/obj/effect/rune/R = locate() in loc var/obj/effect/rune/R = locate() in loc
if (istype(R) && R.word1 == wordsee && R.word2 == wordhell && R.word3 == wordjoin) if (istype(R) && R.word1 == wordsee && R.word2 == wordhell && R.word3 == wordjoin)

View File

@@ -222,12 +222,18 @@
else else
attack_verb = "punch" attack_verb = "punch"
if(src.type == /mob/living/carbon/human/tajaran)
attack_verb = "slash"
if ((prob(75) && health > 0)) if ((prob(75) && health > 0))
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded ))) if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has [attack_verb]ed [name]!</B>", M), 1) O.show_message(text("\red <B>[] has [attack_verb]ed [name]!</B>", M), 1)
playsound(loc, "punch", 25, 1, -1) if(src.type != /mob/living/carbon/human/tajaran)
playsound(loc, "punch", 25, 1, -1)
else if(src.type == /mob/living/carbon/human/tajaran)
playsound(loc, 'slice.ogg', 25, 1, -1)
var/damage = rand(5, 10) var/damage = rand(5, 10)
if (prob(40)) if (prob(40))
damage = rand(10, 15) damage = rand(10, 15)
@@ -242,7 +248,10 @@
updatehealth() updatehealth()
react_to_attack(M) react_to_attack(M)
else else
playsound(loc, 'punchmiss.ogg', 25, 1, -1) if(src.type != /mob/living/carbon/human/tajaran)
playsound(loc, 'punchmiss.ogg', 25, 1, -1)
else if(src.type == /mob/living/carbon/human/tajaran)
playsound(loc, 'slashmiss.ogg', 25, 1, -1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
if ((O.client && !( O.blinded ))) if ((O.client && !( O.blinded )))
O.show_message(text("\red <B>[] has attempted to [attack_verb] [name]!</B>", M), 1) O.show_message(text("\red <B>[] has attempted to [attack_verb] [name]!</B>", M), 1)