Fixed an issue with AIs not being properly listed (Gotta love that special-snowflake code).

While I was at it, implemented the attack sounds for simple animals, most importantly constructs. 

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4189 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
sieve32@gmail.com
2012-07-27 02:55:11 +00:00
parent 9822174a60
commit d5738657cc
9 changed files with 25 additions and 0 deletions

View File

@@ -338,6 +338,8 @@
if(M.melee_damage_upper == 0) if(M.melee_damage_upper == 0)
M.emote("[M.friendly] [src]") M.emote("[M.friendly] [src]")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1) O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)

View File

@@ -363,6 +363,8 @@
if(M.melee_damage_upper == 0) if(M.melee_damage_upper == 0)
M.emote("[M.friendly] [src]") M.emote("[M.friendly] [src]")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1) O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)

View File

@@ -319,6 +319,8 @@
if(M.melee_damage_upper == 0) if(M.melee_damage_upper == 0)
M.emote("[M.friendly] [src]") M.emote("[M.friendly] [src]")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1) O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)

View File

@@ -316,6 +316,8 @@
if(M.melee_damage_upper == 0) if(M.melee_damage_upper == 0)
M.emote("[M.friendly] [src]") M.emote("[M.friendly] [src]")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1) O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)

View File

@@ -60,6 +60,7 @@
spawn(0) spawn(0)
ainame(src) ainame(src)
living_mob_list += src living_mob_list += src
mob_list += src
return return
@@ -347,6 +348,8 @@
if(M.melee_damage_upper == 0) if(M.melee_damage_upper == 0)
M.emote("[M.friendly] [src]") M.emote("[M.friendly] [src]")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1) O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)

View File

@@ -666,6 +666,8 @@
if(M.melee_damage_upper == 0) if(M.melee_damage_upper == 0)
M.emote("[M.friendly] [src]") M.emote("[M.friendly] [src]")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1) O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)

View File

@@ -29,6 +29,7 @@
a_intent = "harm" a_intent = "harm"
stop_automated_movement = 1 stop_automated_movement = 1
status_flags = CANPARALYSE status_flags = CANPARALYSE
attack_sound = 'punch4.ogg'
var/energy = 0 var/energy = 0
var/max_energy = 1000 var/max_energy = 1000

View File

@@ -32,6 +32,7 @@
a_intent = "harm" a_intent = "harm"
stop_automated_movement = 1 stop_automated_movement = 1
status_flags = CANPARALYSE status_flags = CANPARALYSE
attack_sound = 'punch3.ogg'
Life() Life()
@@ -108,6 +109,8 @@
if(M.melee_damage_upper <= 0) if(M.melee_damage_upper <= 0)
M.emote("[M.friendly] \the <EM>[src]</EM>") M.emote("[M.friendly] \the <EM>[src]</EM>")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("<span class='attack'>\The <EM>[M]</EM> [M.attacktext] \the <EM>[src]</EM>!</span>", 1) O.show_message("<span class='attack'>\The <EM>[M]</EM> [M.attacktext] \the <EM>[src]</EM>!</span>", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)
@@ -169,6 +172,7 @@
stop_automated_movement = 1 stop_automated_movement = 1
status_flags = CANPARALYSE status_flags = CANPARALYSE
see_in_dark = 7 see_in_dark = 7
attack_sound = 'bladeslice.ogg'
Life() Life()
..() ..()
@@ -238,6 +242,8 @@
if(M.melee_damage_upper <= 0) if(M.melee_damage_upper <= 0)
M.emote("[M.friendly] \the <EM>[src]</EM>") M.emote("[M.friendly] \the <EM>[src]</EM>")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("<span class='attack'>\The <EM>[M]</EM> [M.attacktext] \the <EM>[src]</EM>!</span>", 1) O.show_message("<span class='attack'>\The <EM>[M]</EM> [M.attacktext] \the <EM>[src]</EM>!</span>", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)
@@ -300,6 +306,7 @@
a_intent = "harm" a_intent = "harm"
stop_automated_movement = 1 stop_automated_movement = 1
status_flags = CANPARALYSE status_flags = CANPARALYSE
attack_sound = 'punch2.ogg'
Life() Life()
..() ..()
@@ -320,6 +327,8 @@
if(M.melee_damage_upper <= 0) if(M.melee_damage_upper <= 0)
M.emote("[M.friendly] \the <EM>[src]</EM>") M.emote("[M.friendly] \the <EM>[src]</EM>")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("<span class='attack'>\The <EM>[M]</EM> [M.attacktext] \the <EM>[src]</EM>!</span>", 1) O.show_message("<span class='attack'>\The <EM>[M]</EM> [M.attacktext] \the <EM>[src]</EM>!</span>", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)

View File

@@ -255,6 +255,8 @@
if(M.melee_damage_upper == 0) if(M.melee_damage_upper == 0)
M.emote("[M.friendly] [src]") M.emote("[M.friendly] [src]")
else else
if(M.attack_sound)
playsound(loc, M.attack_sound, 50, 1, 1)
for(var/mob/O in viewers(src, null)) for(var/mob/O in viewers(src, null))
O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1) O.show_message("\red <B>[M]</B> [M.attacktext] [src]!", 1)
var/damage = rand(M.melee_damage_lower, M.melee_damage_upper) var/damage = rand(M.melee_damage_lower, M.melee_damage_upper)