From 25bf5bb469920d68441879060eb4e9dbfeeae222 Mon Sep 17 00:00:00 2001 From: Sharkmare <34294231+Sharkmare@users.noreply.github.com> Date: Mon, 19 Aug 2019 11:16:40 +0200 Subject: [PATCH 1/6] [WIP] Weep larva Mob based on synx, grows and evolves. --- .../mob/living/simple_animal/animals/synx.dm | 76 ++++++++++++++++++- 1 file changed, 75 insertions(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/animals/synx.dm b/code/modules/mob/living/simple_animal/animals/synx.dm index fe720f9438..c76997d464 100644 --- a/code/modules/mob/living/simple_animal/animals/synx.dm +++ b/code/modules/mob/living/simple_animal/animals/synx.dm @@ -20,6 +20,7 @@ var/transformed = FALSE var/memorysize = 50 //Var for how many messages synxes remember if they know speechcode var/list/voices = list() + var/forcefeedchance = 20 faction = "Synx" intelligence_level = SA_ANIMAL @@ -257,7 +258,7 @@ mob/living/simple_animal/synx/PunchTarget() if(.) // If we succeeded in hitting. if(isliving(A)) var/mob/living/L = A - if(prob(20))//Forcefeeding code + if(prob(forcefeedchance))//Forcefeeding code L.Weaken(5) stop_automated_movement = 1 src.feed_self_to_grabbed(src,L) @@ -550,3 +551,76 @@ mob/living/simple_animal/synx/PunchTarget() else return pick(prob(50);/mob/living/simple_animal/retaliate/synx/pet/greed, prob(50);/mob/living/simple_animal/retaliate/synx/pet/diablo, prob(50);/mob/living/simple_animal/retaliate/synx/pet/holo,) + +//////////////////////////////////////////////////////////////////////////// +//////////////////////////NOT A SYNX///////but looks kinda like one///////// +//////////////////////////////////////////////////////////////////////////// +//So we got base synxes pretty much done, how about some special variants +/mob/living/simple_animal/retaliate/synx/pet/weepinggamblers + name = "Synx?" + desc = "A cold blooded, genderless, parasitic eel? Is it crying?" + tt_desc = "Synxus?" + forcefeedchance = 99 //You have a stomach? yeah they go in. + poison_per_bite = 0 //no poison + + hostile = 1 + + faction = "synx?" + melee_damage_lower = 1 + melee_damage_upper = 1 + environment_smash = 1 + destroy_surroundings = 1 + +/mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/New() + ..() + faction = rand(1,5) + switch(faction) + if(1 to 2) voices |= "Unidentifiable Weeping" + name = "Weeper" + melee_damage_upper = 4 + if(3) voices |= "Radio Static" + name = "Whistler" + melee_damage_upper = 20 + if(4 to 5) voices |= "Unidentifiable Wailing" + name= "Wailer" + melee_damage_upper = 10 + speak |= "No one" + + voices -= "Garbled voice" + voices -= "Unidentifiable Voice" + speak -= "Who is there?" + speak -= "What is that thing?!" + +/mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/proc/MoveToTarget() + var/mob/living/speaker + if(target_mob) + speaker = target_mob + speak |= speaker.GetVoice() + ..() + +/mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/Life() + ..() + if(prob(1) && faction <= 5) + handlemutations(rand(1,5)) + +/mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/proc/handlemutations(faction) + switch(faction) + if(1 to 2 || 11 to 12) + voices = ["Unidentifiable Weeping"] + name = "Weeper" + melee_damage_upper = 4 + if(3 || 13) + voices = ["Radio Static"] + name = "Whistler" + melee_damage_upper = 20 + if(4 to 5 || 14 to 15) + voices = ["Unidentifiable Wailing"] + name= "Wailer" + melee_damage_upper = 10 + if(6 to 10 || 16 to 20) + voices = ["Breathing"] + name= "Silent" + +//WEEPING END + + From c15c80f1b82238418b7691830af4e4c02f561e45 Mon Sep 17 00:00:00 2001 From: Sharkmare <34294231+Sharkmare@users.noreply.github.com> Date: Mon, 19 Aug 2019 11:24:33 +0200 Subject: [PATCH 2/6] Update synx.dm --- .../mob/living/simple_animal/animals/synx.dm | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/code/modules/mob/living/simple_animal/animals/synx.dm b/code/modules/mob/living/simple_animal/animals/synx.dm index c76997d464..98b00c7b4e 100644 --- a/code/modules/mob/living/simple_animal/animals/synx.dm +++ b/code/modules/mob/living/simple_animal/animals/synx.dm @@ -606,19 +606,19 @@ mob/living/simple_animal/synx/PunchTarget() /mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/proc/handlemutations(faction) switch(faction) if(1 to 2 || 11 to 12) - voices = ["Unidentifiable Weeping"] - name = "Weeper" + voices = ["Unidentifiable Weeping"], + name = "Weeper", melee_damage_upper = 4 if(3 || 13) - voices = ["Radio Static"] - name = "Whistler" + voices = ["Radio Static"], + name = "Whistler", melee_damage_upper = 20 if(4 to 5 || 14 to 15) - voices = ["Unidentifiable Wailing"] - name= "Wailer" + voices = ["Unidentifiable Wailing"], + name= "Wailer", melee_damage_upper = 10 if(6 to 10 || 16 to 20) - voices = ["Breathing"] + voices = ["Breathing"], name= "Silent" //WEEPING END From 939d69204577d007941dac5883c6bf78c9432740 Mon Sep 17 00:00:00 2001 From: Sharkmare <34294231+Sharkmare@users.noreply.github.com> Date: Mon, 19 Aug 2019 11:30:08 +0200 Subject: [PATCH 3/6] Update synx.dm --- .../mob/living/simple_animal/animals/synx.dm | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/code/modules/mob/living/simple_animal/animals/synx.dm b/code/modules/mob/living/simple_animal/animals/synx.dm index 98b00c7b4e..0e2ccdbe6c 100644 --- a/code/modules/mob/living/simple_animal/animals/synx.dm +++ b/code/modules/mob/living/simple_animal/animals/synx.dm @@ -605,20 +605,20 @@ mob/living/simple_animal/synx/PunchTarget() /mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/proc/handlemutations(faction) switch(faction) - if(1 to 2 || 11 to 12) - voices = ["Unidentifiable Weeping"], - name = "Weeper", + if(1 to 2 || 11 to 12) + voices = "Unidentifiable Weeping" + name = "Weeper" melee_damage_upper = 4 if(3 || 13) - voices = ["Radio Static"], - name = "Whistler", + voices = "Radio Static" + name = "Whistler" melee_damage_upper = 20 if(4 to 5 || 14 to 15) - voices = ["Unidentifiable Wailing"], - name= "Wailer", + voices = "Unidentifiable Wailing" + name= "Wailer" melee_damage_upper = 10 if(6 to 10 || 16 to 20) - voices = ["Breathing"], + voices = "Breathing" name= "Silent" //WEEPING END From 88cba11f0ff75942d0b4429ad1788bea3c5997fd Mon Sep 17 00:00:00 2001 From: Sharkmare <34294231+Sharkmare@users.noreply.github.com> Date: Mon, 19 Aug 2019 12:25:14 +0200 Subject: [PATCH 4/6] Update synx.dm --- code/modules/mob/living/simple_animal/animals/synx.dm | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/simple_animal/animals/synx.dm b/code/modules/mob/living/simple_animal/animals/synx.dm index 0e2ccdbe6c..613c2c7ec2 100644 --- a/code/modules/mob/living/simple_animal/animals/synx.dm +++ b/code/modules/mob/living/simple_animal/animals/synx.dm @@ -605,21 +605,22 @@ mob/living/simple_animal/synx/PunchTarget() /mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/proc/handlemutations(faction) switch(faction) - if(1 to 2 || 11 to 12) + if(1 to 2 , 11 to 12) voices = "Unidentifiable Weeping" name = "Weeper" melee_damage_upper = 4 - if(3 || 13) + if(3 , 13) voices = "Radio Static" name = "Whistler" melee_damage_upper = 20 - if(4 to 5 || 14 to 15) + if(4 to 5 , 14 to 15) voices = "Unidentifiable Wailing" name= "Wailer" melee_damage_upper = 10 - if(6 to 10 || 16 to 20) + if(6 to 10 , 16 to 20) voices = "Breathing" name= "Silent" + else return //WEEPING END From 5dc9d55a2b843e99ff9cd467dd7caa8a0b5522b7 Mon Sep 17 00:00:00 2001 From: Sharkmare <34294231+Sharkmare@users.noreply.github.com> Date: Mon, 19 Aug 2019 12:33:11 +0200 Subject: [PATCH 5/6] Update synx.dm --- code/modules/mob/living/simple_animal/animals/synx.dm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/simple_animal/animals/synx.dm b/code/modules/mob/living/simple_animal/animals/synx.dm index 613c2c7ec2..8e34b75bfb 100644 --- a/code/modules/mob/living/simple_animal/animals/synx.dm +++ b/code/modules/mob/living/simple_animal/animals/synx.dm @@ -575,13 +575,16 @@ mob/living/simple_animal/synx/PunchTarget() ..() faction = rand(1,5) switch(faction) - if(1 to 2) voices |= "Unidentifiable Weeping" + if(1 to 2) + voices |= "Unidentifiable Weeping" name = "Weeper" melee_damage_upper = 4 - if(3) voices |= "Radio Static" + if(3) + voices |= "Radio Static" name = "Whistler" melee_damage_upper = 20 - if(4 to 5) voices |= "Unidentifiable Wailing" + if(4 to 5) + voices |= "Unidentifiable Wailing" name= "Wailer" melee_damage_upper = 10 speak |= "No one" @@ -591,7 +594,7 @@ mob/living/simple_animal/synx/PunchTarget() speak -= "Who is there?" speak -= "What is that thing?!" -/mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/proc/MoveToTarget() +/mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/MoveToTarget() var/mob/living/speaker if(target_mob) speaker = target_mob From 008be9ffcd23fc83f9e1093a78c874166c31f076 Mon Sep 17 00:00:00 2001 From: Sharkmare <34294231+Sharkmare@users.noreply.github.com> Date: Mon, 19 Aug 2019 12:34:15 +0200 Subject: [PATCH 6/6] Update synx.dm --- code/modules/mob/living/simple_animal/animals/synx.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/simple_animal/animals/synx.dm b/code/modules/mob/living/simple_animal/animals/synx.dm index 8e34b75bfb..0c88de9581 100644 --- a/code/modules/mob/living/simple_animal/animals/synx.dm +++ b/code/modules/mob/living/simple_animal/animals/synx.dm @@ -575,7 +575,7 @@ mob/living/simple_animal/synx/PunchTarget() ..() faction = rand(1,5) switch(faction) - if(1 to 2) + if(1 , 2) voices |= "Unidentifiable Weeping" name = "Weeper" melee_damage_upper = 4 @@ -583,7 +583,7 @@ mob/living/simple_animal/synx/PunchTarget() voices |= "Radio Static" name = "Whistler" melee_damage_upper = 20 - if(4 to 5) + if(4 , 5) voices |= "Unidentifiable Wailing" name= "Wailer" melee_damage_upper = 10 @@ -608,7 +608,7 @@ mob/living/simple_animal/synx/PunchTarget() /mob/living/simple_animal/retaliate/synx/pet/weepinggamblers/proc/handlemutations(faction) switch(faction) - if(1 to 2 , 11 to 12) + if(1 , 2 , 11 , 12) voices = "Unidentifiable Weeping" name = "Weeper" melee_damage_upper = 4 @@ -616,7 +616,7 @@ mob/living/simple_animal/synx/PunchTarget() voices = "Radio Static" name = "Whistler" melee_damage_upper = 20 - if(4 to 5 , 14 to 15) + if(4 , 5 , 14 , 15) voices = "Unidentifiable Wailing" name= "Wailer" melee_damage_upper = 10