diff --git a/code/modules/mob/living/simple_animal/animals/synx.dm b/code/modules/mob/living/simple_animal/animals/synx.dm
index 262170a79c..8fd717f6df 100644
--- a/code/modules/mob/living/simple_animal/animals/synx.dm
+++ b/code/modules/mob/living/simple_animal/animals/synx.dm
@@ -10,12 +10,14 @@
icon_dead = "synx_dead"
//VAR$ SETUP
+ var/realname = null
var/poison_per_bite = 5
var/poison_chance = 99.666
var/poison_type = "synxchem"//inaprovalin, but evil
var/transformed_state = "synx_transformed"
var/transformed = FALSE
var/memorysize = 50 //Var for how many messages synxes remember if they know speechcode
+ var/list/voices = list()
faction = "Synx"
intelligence_level = SA_ANIMAL
@@ -23,7 +25,7 @@
maxHealth = 150
health = 150
turns_per_move = 5 //Should just affect how often it wanders, subject to change.
- speed = -2 //Re enabled custom speed
+ speed = 2 //Re enabled custom speed
see_in_dark = 6
stop_when_pulled = 0
armor = list( // will be determined
@@ -113,11 +115,13 @@
*/
/mob/living/simple_animal/retaliate/synx/New()
- ..()
- verbs |= /mob/living/proc/ventcrawl
- verbs |= /mob/living/simple_animal/proc/contort
- verbs += /mob/living/simple_animal/retaliate/synx/proc/disguise
- verbs += /mob/living/simple_animal/retaliate/synx/proc/honk
+ ..()
+ verbs |= /mob/living/proc/ventcrawl
+ verbs |= /mob/living/simple_animal/proc/contort
+ verbs += /mob/living/simple_animal/retaliate/synx/proc/disguise
+ verbs += /mob/living/simple_animal/retaliate/synx/proc/honk
+ verbs += /mob/living/simple_animal/retaliate/synx/proc/randomspeech
+ realname = name
mob/living/simple_animal/synx/PunchTarget()
if(!Adjacent(target_mob))
@@ -264,7 +268,21 @@ mob/living/simple_animal/synx/PunchTarget()
if(prob(poison_chance))
to_chat(L, "You feel a strange substance on you.")
L.reagents.add_reagent(poison_type, poison_per_bite)
-
+
+/mob/living/simple_animal/retaliate/synx/hear_say(message,speaker)
+ . = ..()
+ if(!message) return
+ speak += message
+ voices += speaker
+ if(voices.len>=memorysize)
+ voices -= (pick(voices))//making the list more dynamic
+ if(speak.len>=memorysize)
+ speak -= (pick(speak))//making the list more dynamic
+ if(resting)
+ resting = !resting
+ if(message=="Honk!")
+ bikehorn()
+
//////////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////// POWERS!!!! /////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////////
@@ -281,13 +299,13 @@ mob/living/simple_animal/synx/PunchTarget()
status_flags &= ~HIDING
reset_plane_and_layer()
to_chat(src,"You have stopped hiding.")
- speed = -3
+ speed = 2
else
status_flags |= HIDING
layer = HIDING_LAYER //Just above cables with their 2.44
plane = OBJ_PLANE
to_chat(src,"You are now hiding.")
- speed = 2
+ speed = 4
/mob/living/simple_animal/retaliate/synx/proc/disguise()
set name = "Toggle Form"
@@ -309,6 +327,18 @@ mob/living/simple_animal/synx/PunchTarget()
transformed = !transformed
update_icons()
+/mob/living/simple_animal/retaliate/synx/proc/randomspeech()
+ set name = "speak"
+ set desc = "Takes a sentence you heard and says it"
+ set category = "Abilities"
+ if(speak && voices)
+ name = pick(voices)
+ spawn(10)
+ src.say(pick(speak))
+ else
+ usr << "YOU NEED TO HEAR THINGS FIRST, try using Ventcrawl to eevesdrop on nerds"
+ spawn(20)
+ name = realname
////////////////////////////////////////
////////////////PET VERSION/////////////
@@ -340,18 +370,6 @@ mob/living/simple_animal/synx/PunchTarget()
speak_chance = 2.0666
speak = list()
-//PET speechcode, simplistic but more than enough for the PET
-/mob/living/simple_animal/retaliate/synx/pet/hear_say(message)
- . = ..()
- if(!message) return
- speak += message
- if(speak.len>=memorysize)
- speak -= (pick(speak))//making the list more dynamic
- if(resting)
- resting = !resting
- if(message=="Honk!")
- bikehorn()
-
//HONKMOTHER Code.
/mob/living/simple_animal/retaliate/synx/proc/honk()
set name = "HONK"