Commit Graph

26 Commits

Author SHA1 Message Date
SkyratBot
532052e080 [MIRROR] bane component to element. nullrod now uses it for revenants. (#7806)
* bane component to element. nullrod now uses it for revenants. (#60640)

* bane component to element. nullrod uses it for revenants.

* TRUE to FALSE

* bane component to element. nullrod now uses it for revenants.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2021-08-27 10:44:38 -04:00
SkyratBot
a1c7bd4bae [MIRROR] knockback component to element. (#7542)
* knockback component to element.

* Update tgstation.dme

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update code/modules/mob/living/simple_animal/hostile/megafauna/demonic_frost_miner.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update code/modules/mob/living/simple_animal/hostile/megafauna/demonic_frost_miner.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Update freezer.dm

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
2021-08-15 23:09:21 +01:00
SkyratBot
6ca0f0d80c [MIRROR] lifesteal component to element. (#7537)
* lifesteal component to element. (#60632)

* lifesteal component to element.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2021-08-13 17:22:49 +01:00
SkyratBot
7d1d0e1fad [MIRROR] Refactors most spans into span procs (#6315)
* Refactors most spans into span procs

* AA

* a

* AAAAAAAAAAAAAAAAAAAAAA

* Update species.dm

Co-authored-by: Watermelon914 <37270891+Watermelon914@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-06-16 00:24:49 +01:00
SkyratBot
6f3b151bb8 [MIRROR] Fixes a bunch of harddels that are sourced from player action (#6252)
* Fixes a bunch of harddels that are sourced from player action

* Mirror!

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: Funce <funce.973@gmail.com>
2021-06-11 03:13:33 +01:00
SkyratBot
0fb6088b16 [MIRROR] Fixes a ci error caused by adding an element to something that'd being deleted (#5708)
* Fixes a ci error caused by adding an element to something that'd being deleted (#59108)

So that's why mythril coins kept harddeleting.
Man I'm glad I added an error on adding elements to qdeleted objects.

* Fixes a ci error caused by adding an element to something that'd being deleted

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2021-05-15 04:41:34 +01:00
SkyratBot
bb4aeacfc6 [MIRROR] Componentizes Duffelbag Curse and turns it into an RPGloot modifier (+ curse announcement element) (#5683)
* Componentizes Duffelbag Curse and turns it into an RPGloot modifier (+ curse announcement element) (#59029)

Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Componentizes Duffelbag Curse and turns it into an RPGloot modifier (+ curse announcement element)

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2021-05-14 15:38:12 +01:00
SkyratBot
d7432b75cc [MIRROR] [SPEEDMERGE CANDIDATE] Validate THIS integration tests (#5600)
* validate THIS integration tests (#59024)

Hi, the #58882 PR missed that validate takes an item, no parent var lookup required.
Why It's Good For The Game

UNFUCKS MASTER

* [SPEEDMERGE CANDIDATE] Validate THIS integration tests

Co-authored-by: Funce <funce.973@gmail.com>
2021-05-11 13:22:31 +12:00
SkyratBot
01a2d62e9e [MIRROR] Kills BOTH /poison paths by turning poisonous into an element. (+fantasty prefix, sanity on attackingtarget signal, and more) (#5586)
* Kills BOTH /poison paths by turning poisonous into an element. (+fantasty prefix, sanity on attackingtarget signal, and more) (#58882)

* Kills BOTH /poison paths by turning poisonous into an element. (+fantasty prefix, sanity on attackingtarget signal, and more)

* AAAAAAAA

* Update spellbook.dm

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-05-10 15:12:34 +01:00
SkyratBot
0eb1f07cf8 [MIRROR] admins can add specific fantasy affixes to items (#5528)
* Add admin tool for adding specific fantasy affixes (#58884)

A new option when using VV on atom movables is to add a custom
fantasy "affixes".

* admins can add specific fantasy affixes to items

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2021-05-07 22:33:08 +01:00
SkyratBot
1f665ef7f7 [MIRROR] Beauty is now an element. Fixing an issue with enter/exit area comsigs. (#3639)
* Beauty is now an element. Fixing an issue with enter/exit area comsigs. (#57147)

Co-authored-by: Ghommie <425422238+Ghommie@ users.noreply.github.com>

* Beauty is now an element. Fixing an issue with enter/exit area comsigs.

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
Co-authored-by: Ghommie <425422238+Ghommie@ users.noreply.github.com>
2021-02-25 13:37:25 +00:00
SkyratBot
47febd0ae5 [MIRROR] Beauty component improvements. Two new fantasy component prefixes (#1673)
* Beauty component improvements. Two new fantasy component prefixes (#54622)

Title. Changed the component backend code slightly to allow a single component to hold the total score instead of spawning new components. This should fix cases, such as material stacks without the MATERIAL_NO_EFFECTS flag, where multiple set_costum_materials calls can be made and new beauty components spawned.

* Beauty component improvements. Two new fantasy component prefixes

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2020-11-11 02:52:18 +00:00
SkyratBot
d1315d9474 [MIRROR] Audio falloff re-work, and increased audio range. (#1406)
* Audio falloff re-work, and increased audio range.

* a

* a

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-21 07:36:31 +02:00
SkyratBot
88ca8f8d54 [MIRROR] RPG Loot's summoning affix can no longer summon mecha pilots and elites (#273)
* RPG Loot's summoning affix can no longer summon mecha pilots and elites (#52781)

* jesus christ

* webbit

* RPG Loot's summoning affix can no longer summon mecha pilots and elites

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2020-08-10 23:22:15 +01:00
SkyratBot
676952afe0 [MIRROR] Dismemberment wound tweaks, zombies are easy to wound/dismember, tweaks to head vulnerability (#130)
* Dismemberment wound tweaks, zombies are easy to wound/dismember, tweaks to head vulnerability (#52534)

* adds wound armor to helmets + such, nerfs standard head resist

* dismember + wound species balance, retitle traits

* Dismemberment wound tweaks, zombies are easy to wound/dismember, tweaks to head vulnerability

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-07-31 00:22:04 +02:00
Ryll Ryll
5c174800fb Grenades and projectiles can have shrapnel and embed, all carbons can suffer embeds, some bullets can ricochet, sizable refactor of embedding (#49634)
About The Pull Request

It annoyed me that we have a perfectly good frag grenade item, and a perfectly good shrapnel component, but no crossover episode between the two. This remedies that, and does a lot, lot more.

dreamseeker_2020-03-30_05-01-13.png

dreamseeker_2020-03-30_05-01-26.png

Big points:

    Adds new component: pellet_cloud, which can be used by ammo casings, guns, and landmines to spray shrapnel and display aggregate hit messages ("You're hit by 6 buckshot pellets!" vs "You're hit by the buckshot pellet in the X" x6). All gun ammo that shoot multiple pellets now use this component on firing.
    Adds stingbangs, premium less-lethal grenades that shoot off lots of stinger pellets, to cargo. Frag grenades are also reworked to have smaller booms, but shoot off lots of shrapnel shards. You can jump on top of these grenades to absorb a portion of the shrapnel to save those around you! There's an achievement for dying this way, called "Look Out, Sir!"
    Projectiles can now embed items/shrapnel. Adds .38 DumDum ammo to cargo that does less damage and has negative armor pen, but can embed in people. This is the only ammo that currently embeds.
    Bullets can now ricochet off walls, structures, and machinery (harder surfaces are more likely to ricochet). Only standard .38 and Match Grade .38/.357/L6 ammo can ricochet, with Match Grade being much better at ricocheting. You can buy Match Grade .38 from cargo and Match Grade L6 ammo from the nuke uplink, while Match .357 is admin only.
    Armor now protects you from harmful embeds, taking the better of the bullet/bomb armor on the affected limb. Armor penetration can modify this of course, and many blunt embeds like stingbangs and DumDum bullets are significantly worse if you have even 1 armor.

Other misc fixes/changes

    Refactored the embed element a bunch and fixed it creating new elements for every instance rather than expected bespoke behavior. There are new /obj/item helpers for modifying and adding embedding.
    Fixes #49989: Spears can no longer embed in turfs cause their sprite is annoying to me, it's generally harder for most things to embed in turfs
    Fixes #49741: New carbon helpers for removing embedded objects
    Fixes #46416: Handles embedded objects getting qdel'd or moved while embedded
    Renamed the old shrapnel component for RPG loot to MIRV to avoid confusion
    Repathed frag grenades from under minibombs to under base grenades, and added explosion vars to base grenades

Why It's Good For The Game

Fixes a bunch of janky design with embeds, adds lots of new avenues for projectile and grenade variety, ricochets and collateral damage are fun!
Changelog

🆑 Ryll/Shaps
add: Adds stingbangs to cargo (and one in the sec vendor premium), premium less-lethal grenades that shoot off a giant swarm of stingball pellets to help incapacitate swarms of people in tight quarters. You can jump on top of a live one to be a hero and absorb a bunch of shrapnel, same with frag grenades. There's even an achievement for dying to a grenade you jumped on!
add: Projectiles can now embed in people! Or at least grenade shrapnel and the new .38 DumDum ammo, now available in cargo, can. DumDum rounds excel against unarmored targets, but are pricey and do poorly against armored targets.
add: Bullets can now ricochet! Or at least, standard .38 and the new .38/L6 Match Grade ammo can. Match Grade ammo is finely tuned to ricochet easier and seek targets off bounces better, and can be purchased from cargo (for the .38) or nuke ops uplink (for the L6), but standard .38 ammo has a chance to ricochet as well.
tweak: Frag grenades now have smaller explosions but shoot off a bunch of devastating shrapnel, excellent for soft targets!
tweak: Shotguns and other multi-pellet guns now print aggregate messages, so you'll get one "You've been hit by 6 buckshot pellets!" rather than 6 "You've been hit by the buckshot pellet in the X!" messages. Bye bye lag!
balance: Armor can now protect against embedding weapons, taking the best of either the bullet or bomb armor for the limb in question away from the embed chance. Some weapons are better at piercing armor than others!
/🆑
2020-04-03 16:58:38 +13:00
ShizCalev
7209ac3c93 Removes unnessacary math defines 2020-02-17 23:09:09 -05:00
Emmett Gaines
9e34b3d6a1 Supports named arguments in AddComponent and AddElement (#49098)
AddComponent/AddElement now support named arguments. This requires passing around an argument list instead of using actual proc args which a bit gross but we can blame byond for forcing this.

InheritComponent uses mirrored init arguments instead of an argument list which means no more accessing it via index to get to the same arguments as in init.

As a small bonus I restructured dcs defines to be a bit more manageable. Mainly just splits them into separate files and gives them their own folder.
2020-02-17 17:57:52 +13:00
spookydonut
2591ce17a6 Travis EOF newline detection v3 (#47539)
* scream

* aaa

* aaa

* new one
2019-11-04 19:16:50 -08:00
kingofkosmos
8768b6b3b5 Removes unused & undefined spans (#47436)
* Removes all instances of 'caution', 'error' and 'notify'.

* Removes span classes which were either not used at all or were used very infrequently.
2019-10-30 02:00:11 -07:00
nemvar
a148cae769 Kills obj/item/projectile in favour of obj/projectile (#46692)
* Kills obj/item/projectile in favour of obj/projectile

* Resolves conflicts properly

* fixes that one map

* it lives
2019-10-06 13:37:24 -04:00
Fikou
730d96ad06 bunch of datum mats stuff mostly related to coins (#46289)
adamantine and mythril are now datum mats (mythril still admin only), adamantine has 1.5 strength buff to whatever is made out of it, mythril adds rpg loot elements to whatever is made out of it
you can now put plastic, adamantine and mythril in the autolathe and coin mint
you can now put titanium in coin mint
switches a bunch of stuff in cargo exports, including mythril and plastic being worth cash money
coin code has been changed to datum mats, the custom sprites have been lost except for antag token
2019-09-17 10:50:32 -04:00
ninjanomnom
56196df9c6 Reverts datum outputs
reverts #43038
reverts #41535
2019-06-13 20:09:10 -04:00
Whoneedspacee
03f7432511 New RPGLoot Affixes + Component Additions (#44188)
* knockback component can now be reversed, has projectile and gun handling, and hostile simplemob handling

adds signals for hostile mobs attacking, altering projectiles before firing, and for when projectiles successfully hit their target

moves knockback handling to a general proc

adds ishelpers for guns and projectiles

* no more weird projectile handling it can just not apply the effect if the component somehow goes away

lifesteal actually works now instead of being a blank file, applies a flat healing effect when you hit something

* fixes up comsig stuff

adds new components to the fantasy prefix and suffix

knockback now handles throwing anchored objects

lifesteal now properly heals the target with projectiel weapons

adds summoning component to handle mob summoning with item attacking and such

adds fired_from variable to handle what a projectile was fired_from, firer would be the mob that fired and fired_from would be the gun, in the case of an autoturret, fired_from and firer would be the same

adds shrapnel component, fires projectiles around a fired projectile when it hits

adds igniter component to set attacked mobs on fire

* no more shrapnel on items that can't use it

summoning items now summon at least one mob maximum

adds specific weighted projectile types for shrapnel to prevent broken options being picked

removes the reverse var from knockback component and instead just handles negative thrown turf
2019-06-03 11:00:12 +12:00
ninjanomnom
3ce36defa9 Adds affix validation and a slight cleanup
Makes the force argument in randomAffixes() actually do something
2019-05-31 15:29:19 -04:00
Emmett Gaines
66cab55f28 Replaces the rpg loot datum with a component and makes some suffixes have real effects (#44044)
* Replaces the rpg loot datum with a component

* Makes bane accept species types

And cleans up some other code
2019-05-22 08:47:42 +02:00