From 81251d60274a5a34f7dc41fe12940ca141ad08c4 Mon Sep 17 00:00:00 2001 From: Geeves Date: Sat, 20 May 2023 17:18:55 +0200 Subject: [PATCH] Greimorian Bombardier (#16341) * Greimorian Bombardier * the typo of all time --- .../spells/summon/summon_creature.dm | 35 +++++++++--------- .../simple_animal/hostile/giant_spider.dm | 30 +++++++++++++++ .../living/simple_animal/hostile/hostile.dm | 3 +- html/changelogs/geeves-stop_resisting.yml | 6 +++ icons/mob/npc/greimorian.dmi | Bin 4389 -> 5394 bytes 5 files changed, 56 insertions(+), 18 deletions(-) create mode 100644 html/changelogs/geeves-stop_resisting.yml diff --git a/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm b/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm index 07abaed7c6b..802755ed561 100644 --- a/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm +++ b/code/game/gamemodes/technomancer/spells/summon/summon_creature.dm @@ -17,22 +17,23 @@ desc = "Chitter chitter." summoned_mob_type = null summon_options = list( - "Rat" = /mob/living/simple_animal/rat, - "Lizard" = /mob/living/simple_animal/lizard, - "Chicken" = /mob/living/simple_animal/chicken, - "Chick" = /mob/living/simple_animal/chick, - "Crab" = /mob/living/simple_animal/crab, - "Parrot" = /mob/living/simple_animal/parrot, - "Goat" = /mob/living/simple_animal/hostile/retaliate/goat, - "Cat" = /mob/living/simple_animal/cat, - "Corgi" = /mob/living/simple_animal/corgi, - "Corgi Pup" = /mob/living/simple_animal/corgi/puppy, - "BAT" = /mob/living/simple_animal/hostile/scarybat, - "GREIMORIAN" = /mob/living/simple_animal/hostile/giant_spider, - "GREIMORIAN HUNTER" = /mob/living/simple_animal/hostile/giant_spider/hunter, - "GREIMORIAN NURSE" = /mob/living/simple_animal/hostile/giant_spider/nurse, - "CARP" = /mob/living/simple_animal/hostile/carp, - "BEAR" = /mob/living/simple_animal/hostile/bear + "Rat" = /mob/living/simple_animal/rat, + "Lizard" = /mob/living/simple_animal/lizard, + "Chicken" = /mob/living/simple_animal/chicken, + "Chick" = /mob/living/simple_animal/chick, + "Crab" = /mob/living/simple_animal/crab, + "Parrot" = /mob/living/simple_animal/parrot, + "Goat" = /mob/living/simple_animal/hostile/retaliate/goat, + "Cat" = /mob/living/simple_animal/cat, + "Corgi" = /mob/living/simple_animal/corgi, + "Corgi Pup" = /mob/living/simple_animal/corgi/puppy, + "BAT" = /mob/living/simple_animal/hostile/scarybat, + "GREIMORIAN" = /mob/living/simple_animal/hostile/giant_spider, + "GREIMORIAN HUNTER" = /mob/living/simple_animal/hostile/giant_spider/hunter, + "GREIMORIAN BOMBARDIER" = /mob/living/simple_animal/hostile/giant_spider/bombardier, + "GREIMORIAN NURSE" = /mob/living/simple_animal/hostile/giant_spider/nurse, + "CARP" = /mob/living/simple_animal/hostile/carp, + "BEAR" = /mob/living/simple_animal/hostile/bear ) cooldown = 30 instability_cost = 10 @@ -56,4 +57,4 @@ // Now we hurt their new pal, because being forcefully abducted by teleportation can't be healthy. - summoned.adjustBruteLoss(summoned.getMaxHealth() * 0.3) // Lose 30% of max health on arrival (but could be healed back up). \ No newline at end of file + summoned.adjustBruteLoss(summoned.getMaxHealth() * 0.3) // Lose 30% of max health on arrival (but could be healed back up). diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm index 173c30e7fb7..32265f59eba 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -99,6 +99,36 @@ poison_per_bite = 2 move_to_delay = 5 +/mob/living/simple_animal/hostile/giant_spider/bombardier + name = "greimorian bombardier" + desc = "A disgusting crawling Greimorian. This one has vents that shoot out condensed capsaicin." + icon_state = "greimorian_bombardier" + icon_living = "greimorian_bombardier" + icon_dead = "greimorian_bombardier_dead" + maxHealth = 60 + health = 60 + melee_damage_lower = 5 + melee_damage_upper = 10 + armor_penetration = 5 + ranged = TRUE + ranged_attack_range = 4 + poison_type = /singleton/reagent/capsaicin/condensed + poison_per_bite = 2 + move_to_delay = 5 + +/mob/living/simple_animal/hostile/giant_spider/bombardier/Shoot(var/target, var/start, var/mob/user, var/bullet = 0) + if(target == start) + return + + playsound(loc, 'sound/effects/spray2.ogg', 50, 1, -6) + + var/turf/target_turf = get_turf(target) + var/obj/effect/effect/water/chempuff/pepperspray = new /obj/effect/effect/water/chempuff(get_turf(src)) + pepperspray.create_reagents(15) + pepperspray.reagents.add_reagent(poison_type, 15) + pepperspray.set_color() + pepperspray.set_up(target_turf, 3, 5) + /mob/living/simple_animal/hostile/giant_spider/Initialize(mapload, atom/parent) get_light_and_color(parent) . = ..() diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 8649b4fb4ea..cacf9dde455 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -6,6 +6,7 @@ var/attack_same = 0 var/ranged = 0 var/rapid = 0 + var/ranged_attack_range = 6 var/projectiletype var/projectilesound var/casingtype @@ -160,7 +161,7 @@ LoseTarget() if(target_mob in targets) if(ranged) - if(get_dist(src, target_mob) <= 6) + if(get_dist(src, target_mob) <= ranged_attack_range) walk(src, 0) // We gotta stop moving if we are in range OpenFire(target_mob) else diff --git a/html/changelogs/geeves-stop_resisting.yml b/html/changelogs/geeves-stop_resisting.yml new file mode 100644 index 00000000000..84fe653951e --- /dev/null +++ b/html/changelogs/geeves-stop_resisting.yml @@ -0,0 +1,6 @@ +author: Geeves + +delete-after: True + +changes: + - rscadd: "Added the greimorian bombardier, a greimorian that shoots pepperspray." \ No newline at end of file diff --git a/icons/mob/npc/greimorian.dmi b/icons/mob/npc/greimorian.dmi index e43c3d7ba48b5fbfc999f699fefaaf72c827d154..d2d624a21c75b9223d2cf2e83684c4f235d58e3b 100644 GIT binary patch literal 5394 zcmV+t747PYP)fB$DYaRl!J<2k}I$SANc@X00i3d)`ul3K64vJp$aRD3R~R-0KDO(`u_m` z|A$8b-*iNOAyhnvv4{GnK;s|LXs}FjiJpFE1~^z`%opgTuqa z;Nal2VWJBF0004WQchCV=-0C=38lEDhXFc3t~ z$ybE-Dq_{E7qLhW_7`Mp)+V+|U>jTfdsBN5p-|#&24?o{hNR+{pNmqQE(PzAI_<1D zi2ZuQ*`TFY!R)r2Db%&{lj%Ho3^J(+wQ;1uCY(u4-Pq*pPGE4<*;MPDp4+?KBv4z(tSHT$9qe1HzhDGmCIa2{i{nx>BT6NgDeK~#90?OTg>o4OK}!6u>jT)Q<10lP6PIsgBScb?Kn z2x8p!H0R#Vaxq2%?X7u{kP&O#pmV#vNzH+<8ukE({MZj(nz`jGtFetrb?<~s7 z0fVip%2|%TUJ(6;NK6=%RaI?4;48-f@wR#e+@EaP%?a`Fkw)Z z1zdY5s;U46@MFo0pml;acWu4U%-6MZ34@Xd@a)r9DHnYQ;`HSa+aJH^?;Q35vBo#+ z5Xj)i^njpuh#wgk0wtm;DpdiT6ml`(FW@IQIGg~65`NCu8K7Js@Pm3_1LE@K|=(r1t}~~K%fc(oG(#|2>!x3XZ)qQepPO( zZQ=6PL01dtP*xf)RyqXEeN6`<;C&bgxFQ9Jmy`gxaA7r6csG_g725-7`kZ)heJ<%q zdzUi|^0XQRk4{k64G}Q-ONuZd6H}xqg#o)TFeo)j;i*3 zdcXH%bNGP(IRSn*F@bVRCW0|WjT1*Kl>nJj#g4}gTUBaeG_idDwkpH`nZbjO{lNIe zNDF*2Ki{YdPWFH8y|z$SZfl4%JFtC>LO`IYcTKRNl14_w;$0Ozmww@y5+HjrOO48# z7~`)hIkKfZJYc6U!r#zeQ&x1-KAoHPAX%0pl+!K5{U4c>F>P9*M!jBjNw@_#nZpK4=Tsq&w6CgW-10(+Ozyxsei4R4tsxSn24GGUb?6>%k!(M}6RTU;tpa&oUPyv0h z7a05!Of*p$6CnjiAT8O+OAVsZA>g-qped)^#R{==pD=*a1M(;ihpkOB)`A)$fO&uj zG@FP3TS%11O2y}4l^9*nk4s$(VN*&V001>G0X*}WaE3s6AR1^;-Vh&rnrL3I)8tDY z0KsohfbXJ-LWnqZJUk8Oy(HuT?;(7zfRK3LVkaz0P4uOhWuefShEYLtRCE(xI`Dn8DA0 z9Wl7=!SEsmtLUAJ@f*XP6mL@kze;YL7tCWoV3QD7y78w^_K!&&eSJDPou+50v>^9B zf3un2S6JU|BJJtvNpRy?7G~R?K<=WTy9(KTg{Y%;Tgd_O8vlx^- zLUvyv>8Slaq8ej6F#()mCNO2tb}gy^4qb-9qTZz{pWjzV@rQmZ7zhD8Je}qUv}!^b zBibzKeZ%!IJY8m>yARZFl_v;+_Nj$WoxHxp=|lt9}mfymDB>I))ELBm=bt7QMPNbYo0*8p;4o?M$;rNupCAcC%BOThQ}vM;OP|G zkP_f1HAevVKDcgSZl!&l$TF6Y#I}}B#ytL335W@iwX{(OBEV6K2%KUDj8(VM5(4BT z^%??{$|7y@wn`p9WvEFM3i*m@kp`%pHDGlh1nLX{CpB%a1+gLjqG!&%c>#KU@%&dWE6xmq=9dKFCnIfOy*MgrY5$0d^^wJMtOrnhgmVxjhBa-kZ)A@VIybQbJpsl?2r~pu zRzs(V0BL^bw{SMP2W1$Ldc-#57a}=+J;JBatwU*|u6(W<#2pD%pr|;Cc8Dt_&{~8X zrXmfsNvhU8D1Lmj2jyzn9jR%tCI;RdkD!2WNBA_GfA2$(p;D^0PMcACc)3D6!CVdsd5I*6ALIQFVHh;Y3X}%*1nNn1Y$2Xv`T%)PmB_Huf>+Rm z+`{n&e4xXrg|F6DK{-kh3q8jlHcB zQCTJFZS*Sioi@O+qe)t&ZN)P`AlHZNw9_f3+ ze?G(K{4ZqC({VUoF2iLQat!+Z?A*EU|6yRa%0Sk00sMH(7*T&Ya zOX`WjqzAErrr!YWCPCcn2M(xA3H0Azf#K!#`zO_a5paRaFoD^lhR$irXLN~y{CILX ztASoW|D-H$N24oTG7510>nphU<@Gfo@XskhfTtA?D-?mwLzV#A&?RkImGhQXgC8{8 zCR*L+Nl+l7NSd2e4o-;+TrwGBCYj4CC%-LZ5QgRqe!R$qDMv4RSq3=!X#aTyxS>Z} ziNOq01{99JzxvDVL{bjv8_`4+44q!h`2{ztDYB3Yd2kj#@|%RGen^$VdI~xSGwY{c z00(&HYSh(F073W2XZ|Q-z;)290TI89d-sz6{6jDX!~BC121WPe#nMm)`cBFc^=$>e zLbsi!D!@hDoCEX35`olWNC(J)1lNL>;q?_RvJv56FE9Lgd5IX9m(qZrdhv(HxQK;K3G}QsTE-HS%cX~;!CGl!0xvSVj6{P9%`wYMOrXtpkSK%; z$p#_hDH!|p`wV{a?sLw*kb$&cWHs1B(f}g@hv&_kiICZ!I=sE3s!W^frPN-$2-Wr} zLjZ?7<1tHs3@D4AS5YLaC0bGqxbz-+Ejz|O07G}(>8bk)4B+sD)xOYXdV19;0Y3rI z0go01CxN^Nqi39XZgcc{5nhgy6ETB6itoPqb)q`oQ}_Jb;XgR}+O?rI4p@2BkOm_c z=+TDIf@TO1H$t|+fK@@Mf*8157HFl+X9-ZbFC#8eU_vcPWoSJ!7DTooxMr4ay%o9O z@(fN=-@|$_m=MgpRQ;x@%sF?Ok#-VAb1MZ;z(o4RwWr4)#D@)IA05{BOc?E??B^#} zZgA5)IE$a-c{T~q`;D(yxV10*jAtQ}hQC$gu8!*W3NfF_vy(T_Cr3cm24`~fmG~J% z>uGo%F-0!fEA)5+D`QzX0+(~&XJ6TS&Qh3S?<*O#C$R?h%XBr#%{282eQC`-KDnSYf520!xd6^uGNyGrl=zhCA6Ka;80 z2Y%AKV-Diou>Z&(`Ck$)3;tW{`%>Qj*Vgy7yuVQ2|J>rs`?K}^PrgB6%lrBI{-@ud z2<82Jeg6|~P|R7wOnpDUL26z1pZ`}qxu`wIL&VP8PsP*a(&?`Jh|Z-IYq z_*F7ZSWET&>;}cU0{=(DFZ9fH9wq_hqx$}IgCbktpA45Be>(h}46omZ%)96?x%5GO zKVNp37Wjv_ysrQzy>5L!ld4^koBC-5f$=ZY_j4N*T#ShOU1F7M*>KY9HU$j89;X0H zGx`X6%bq;IZ&0kN?^AS&>-)C69{?od+XorCQ)?Tj)c%U2*dlyp0{jNWy81rpAgb@% z@_qmik00TujRkXmL;~1C59jp$^RV9! z{^2+wR5i6F_#FPF4T`1uzVl^et?!5Oz6FqU@sA!Rjl*zI9cZ0h`drk(GWeG_D3Xaa@C#miGgI zWPF1k!YN)k><@bXVGjp2A}KZb()$el4>u^JzMtO#Gg}lwQp@`RKs0_dHGKae++qzPqlL54GPR)D{xqsBs28D_Ai|J=!kQv3h zXfep0Kof_VD&^AHvl|pz-@mWC|G}tvt@a1;p*4?M*r2%lSb2YO*cp=yK6Lw&<~As_ zzJG6d{~lR3_xvrh8x+32|EX&&OB)nY-~X)j2$rP{3K!!0CzhoRia+v4oV#A9XQ_-J z{|K1%GG5=_1UH_I**@bHKq#{W@M<8Cck`95C|HW z5_rE-wi~hQFCienVX(Ci$ME=O3A|ln8&U!srRE5zkIW3e)NGp&|2h(**hMfQvX(LG zKm<5S5rIsixT<78N)qAb41T;ga*i2M`D++(hMGj7fP!g}2B@7i5H-h=a`2ZDu`@*B zjd{GK%{OrPAdIqJJb^cBLSbh8^b26y!(WZM`UxQD9{K7;Mz4TTo-Lg`fidGjq7Zt@Z49t~N?;sKBH%C;X=wBY zY>XlZnf;aj|G|}hT;O+Pw1C;PZ09};HxJ8DIf?U>y>F@O|0XSwmx=4WuwHs5JKIbhw zmI;go+||+Z6=FV*})KZPNZB&*fY)0nO%xtXS3q2ICQ{{X*> z3AkkZcr|&A);i8xb6C&Y*Q(I$0`&VPdJaE5Y!pXB|C@|I5(_;is40YC)Y;ipdOsKX wgvYE6+RGn7$hH4E*tZT7JLRv3^8X_L1-#BLOzWFI6aWAK07*qoM6N<$g2{a3B>(^b delta 4386 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