From b41b1fc2f3c101e83176a7bab53a65b489b526bf Mon Sep 17 00:00:00 2001 From: Zuhayr Date: Sat, 15 Jun 2013 04:09:49 -0700 Subject: [PATCH] Armalis simple_animal/sprite. --- baystation12.dme | 1 + code/datums/mind.dm | 4 ++ code/modules/client/preferences.dm | 4 -- code/modules/mob/living/simple_animal/vox.dm | 54 ++++++++++++++++++ code/modules/mob/new_player/new_player.dm | 6 +- code/modules/mob/say.dm | 2 +- .../projectiles/guns/projectile/bow.dm | 9 +++ icons/mob/vox.dmi | Bin 0 -> 4156 bytes 8 files changed, 70 insertions(+), 10 deletions(-) create mode 100644 code/modules/mob/living/simple_animal/vox.dm create mode 100644 icons/mob/vox.dmi diff --git a/baystation12.dme b/baystation12.dme index 78f58149999..f002ef969d2 100644 --- a/baystation12.dme +++ b/baystation12.dme @@ -1002,6 +1002,7 @@ #include "code\modules\mob\living\simple_animal\parrot.dm" #include "code\modules\mob\living\simple_animal\shade.dm" #include "code\modules\mob\living\simple_animal\simple_animal.dm" +#include "code\modules\mob\living\simple_animal\vox.dm" #include "code\modules\mob\living\simple_animal\worm.dm" #include "code\modules\mob\living\simple_animal\friendly\cat.dm" #include "code\modules\mob\living\simple_animal\friendly\corgi.dm" diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 175e622788a..4984b982839 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -1220,5 +1220,9 @@ datum/mind mind.assigned_role = "Juggernaut" mind.special_role = "Cultist" +/mob/living/simple_animal/vox/armalis/mind_initialize() + ..() + mind.assigned_role = "Armalis" + mind.special_role = "Vox Raider" diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 75ead11e4c5..e6a76d88e8e 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -792,9 +792,6 @@ datum/preferences if(is_alien_whitelisted(user, "Skrell")) //Check for Skrell and admins new_species += "Skrell" whitelisted = 1 - if(is_alien_whitelisted(user, "Vox")) //Check for Vox and admins - new_species += "Vox" - whitelisted = 1 if(is_alien_whitelisted(user, "Kidan")) // Check for Kidan and admins new_species += "Kidan" whitelisted = 1 @@ -806,7 +803,6 @@ datum/preferences new_species += "Tajaran" new_species += "Unathi" new_species += "Skrell" - new_species += "Vox" new_species += "Kidan" species = input("Please select a species", "Character Generation", null) in new_species diff --git a/code/modules/mob/living/simple_animal/vox.dm b/code/modules/mob/living/simple_animal/vox.dm new file mode 100644 index 00000000000..e73249f2bc8 --- /dev/null +++ b/code/modules/mob/living/simple_animal/vox.dm @@ -0,0 +1,54 @@ +/mob/living/simple_animal/vox/armalis/ + + name = "serpentine alien" + real_name = "serpentine alien" + desc = "A one-eyed, serpentine creature, half-machine, easily nine feet from tail to beak!" + icon = 'icons/mob/vox.dmi' + icon_state = "armalis" + icon_living = "armalis" + maxHealth = 500 + health = 500 + response_harm = "flails ineffectually at the" + harm_intent_damage = 0 + melee_damage_lower = 30 + melee_damage_upper = 40 + attacktext = "slammed its enormous claws into" + speed = -1 + wall_smash = 1 + attack_sound = 'sound/weapons/bladeslice.ogg' + status_flags = 0 + +/mob/living/simple_animal/vox/armalis/attackby(var/obj/item/O as obj, var/mob/user as mob) + if(O.force) + if(O.force >= 25) + var/damage = O.force + if (O.damtype == HALLOSS) + damage = 0 + health -= damage + for(var/mob/M in viewers(src, null)) + if ((M.client && !( M.blinded ))) + M.show_message("\red \b [src] has been attacked with the [O] by [user]. ") + else + for(var/mob/M in viewers(src, null)) + if ((M.client && !( M.blinded ))) + M.show_message("\red \b The [O] bounces harmlessly off of [src]. ") + else + usr << "\red This weapon is ineffective, it does no damage." + for(var/mob/M in viewers(src, null)) + if ((M.client && !( M.blinded ))) + M.show_message("\red [user] gently taps [src] with the [O]. ") + +/mob/living/simple_animal/vox/armalis/verb/fire_quill(mob/target as mob in oview()) + + set name = "Fire quill" + set desc = "Fires a viciously pointed quill at a high speed." + set category = "Alien" + + src << "\red You launch a razor-sharp quill at [target]!" + for(var/mob/O in oviewers()) + if ((O.client && !( O.blinded ))) + O << "\red [src] launches a razor-sharp quill at [target]!" + + var/obj/item/weapon/arrow/quill/Q = new(loc) + Q.fingerprintslast = src + Q.throw_at(target,10,15) \ No newline at end of file diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm index f2859af519d..7f1dbc9f31a 100644 --- a/code/modules/mob/new_player/new_player.dm +++ b/code/modules/mob/new_player/new_player.dm @@ -349,12 +349,8 @@ if(is_alien_whitelisted(src, "Skrell"|| !config.usealienwhitelist)) new_character.dna.mutantrace = "skrell" new_character.skrell_talk_understand = 1 - if(client.prefs.species == "Vox") - if(is_alien_whitelisted(src, "Vox"|| !config.usealienwhitelist)) - new_character.dna.mutantrace = "vox" - new_character.vox_talk_understand = 1 if(client.prefs.species == "Kidan") - if(is_alien_whitelisted(src, "Vox"|| !config.usealienwhitelist)) + if(is_alien_whitelisted(src, "Kidan"|| !config.usealienwhitelist)) new_character.dna.mutantrace = "kidan" new_character.kidan_talk_understand = 1 diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index a0b765d8d43..2ed7f47a101 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -81,7 +81,7 @@ if (is_speaking_tajaran) return "mrowls, \"[text]\""; if (is_speaking_vox) - return "chirps, \"[text]\""; + return "shrieks, \"[text]\""; if (is_speaking_kidan) return "chitters, \"[text]\""; //Needs Virus2 diff --git a/code/modules/projectiles/guns/projectile/bow.dm b/code/modules/projectiles/guns/projectile/bow.dm index 4c5c0c0b1c2..5981ae05c49 100644 --- a/code/modules/projectiles/guns/projectile/bow.dm +++ b/code/modules/projectiles/guns/projectile/bow.dm @@ -13,6 +13,15 @@ /obj/item/weapon/arrow/proc/removed() //Helper for metal rods falling apart.. return +/obj/item/weapon/arrow/quill + + name = "vox quill" + desc = "A wickedly barbed quill from some bizarre animal." + icon = 'icons/mob/vox.dmi' + icon_state = "quill" + item_state = "quill" + throwforce = 15 + /obj/item/weapon/arrow/rod name = "metal rod" diff --git a/icons/mob/vox.dmi b/icons/mob/vox.dmi new file mode 100644 index 0000000000000000000000000000000000000000..6f0172bba7013eb7333b0debc4a8f8a1fe9a9e9b GIT binary patch literal 4156 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