Commit Graph

780 Commits

Author SHA1 Message Date
SkyratBot 89a5f7e7e4 [MIRROR] Fixes the randomly failing unit test that sometimes happens. (#3746)
* Fixes the randomly failing unit test that sometimes happens. (#57266)

* Fixes the randomly failing unit test that sometimes happens.

Co-authored-by: Thalpy <33956696+Thalpy@users.noreply.github.com>
2021-03-01 22:29:21 +00:00
SkyratBot 3a1315edb7 [MIRROR] Move the curse hand's visual effects out of Destroy (and possibly fix the sporadic unit test failure) (#3714)
* Move the curse hand's visual effects out of Destroy (and possibly fix the sporadic unit test failure)

* Update curse.dm

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: KathrinBailey <53862927+KathrinBailey@users.noreply.github.com>
2021-02-28 14:36:38 +00:00
SkyratBot b8c2f72733 [MIRROR] moves gun related icons to guns folder (#3568)
* moves gun related icons to guns folder (#57077)

moves ammo icons, projectile icons and hitscan effect icons to guns folder
renames projectile.dmi to ballistic.dmi so its less confusing
moves rcd ammo from ammo.dmi to tools.dmi with the rcd

* moves gun related icons to guns folder

Co-authored-by: Fikou <piotrbryla@onet.pl>
2021-02-22 02:07:33 +00:00
SkyratBot 9bc6ee7bb5 [MIRROR] improves fire extinguisher code, and makes fire extinguisher water go through machinery, lockers, and crates (#3560)
* improves fire extinguisher code, and makes fire extinguisher water go through machinery, lockers, and crates (#57004)

* improves fire extinguisher code, and makes fire extinguisher water go through machinery, lockers, and crates

Co-authored-by: Tlaltecuhtli <33834933+Tlaltecuhtli@users.noreply.github.com>
2021-02-21 14:17:12 +00:00
SkyratBot 18eca27569 [MIRROR] update_appearance (#3508)
* update_appearance

* a

* a

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-19 16:08:09 +00:00
SkyratBot d2c0090c83 [MIRROR] replaces all instances of ammo_casing/BB to loaded_projectile again without crashing this time (#3478)
* replaces all instances of ammo_casing/BB to loaded_projectile again without crashing this time

* a

Co-authored-by: Kylerace <kylerlumpkin1@gmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-18 21:00:40 +00:00
SkyratBot b332b46b65 [MIRROR] Remove hideous inline tab indentation, and bans it in contributing guidelines (#3394)
* Remove hideous inline tab indentation, and bans it in contributing guidelines

* a

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-15 15:32:02 +00:00
SkyratBot a765e5b0db [MIRROR] Pirates are split into three different ghastly crews! (#3395)
* Pirates are split into three different ghastly crews! (#56264)

Co-authored-by: DeAndre <robustness13@ hotmail.com>
Co-authored-by: itseasytosee <55666666+itseasytosee@ users.noreply.github.com>
Co-authored-by: tgstation-server <tgstation-server@ tgstation13.org>
Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>

* Pirates are split into three different ghastly crews!

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
Co-authored-by: DeAndre <robustness13@ hotmail.com>
Co-authored-by: itseasytosee <55666666+itseasytosee@ users.noreply.github.com>
Co-authored-by: tgstation-server <tgstation-server@ tgstation13.org>
Co-authored-by: Aleksej Komarov <stylemistake@ gmail.com>
Co-authored-by: Mothblocks <35135081+Mothblocks@ users.noreply.github.com>
2021-02-15 13:32:35 +00:00
SkyratBot 3f72c8b070 [MIRROR] breaching missiles breach windows and rwindows (#3329)
* breaching missiles breach windows and rwindows (#56858)

Co-authored-by: Fikou <piotrbryla@ onet.pl>

* breaching missiles breach windows and rwindows

Co-authored-by: Tlaltecuhtli <33834933+Tlaltecuhtli@users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@ onet.pl>
2021-02-13 00:39:38 +00:00
SkyratBot 8007eb1578 [MIRROR] Refactors sharpness to use a bitfield (#3301)
* Refactors sharpness to use a bitfield (#56817)

Refactors sharpness to use bitfield instead of bitflags in case someone wants to add more types of sharp things, or unique behaviour with them

* Refactors sharpness to use a bitfield

* Update bullets.dm

Co-authored-by: Sparkezel <53384660+Sparkezel@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-11 23:57:06 +00:00
SkyratBot b902f89062 [MIRROR] Refactor can_inject, and introduce try_inject (#3300)
* Refactor can_inject, and introduce try_inject (#56816)

Splits can_inject into can_inject and try_inject. The latter can perform side effects, while the former cannot. Moved the show_error bool parameter to a flag that try_inject checks.

Changes the signature to can_inject(mob/user, target_zone, injection_flags). This was previously redefined in several places, making it impossible to use named parameters. This refactor now allows named parameters to be used, and thus avoiding the ugliness of TRUE, FALSE, FALSE in parameters.

* Refactor can_inject, and introduce try_inject

Co-authored-by: Mothblocks <35135081+Jared-Fogle@users.noreply.github.com>
2021-02-11 19:49:47 +00:00
SkyratBot 25df6e7da3 Cleaning up robot code: modules renamed to models & DOGBORG REWORK (#2837)
* Cleaning up robot code: modules renamed to models

* Merge branch 'master' into upstream-merge-56312

* [PR Fix] Modular_Skyrat borgos (#3019)

* No more linter complaining

* Halfway (or full way, I don't know) through moving stuff around

* Caps!

* a

Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
Co-authored-by: Funce <funce.973@gmail.com>
2021-02-05 21:28:06 +00:00
SkyratBot b5f101661d [MIRROR] You can now remove embedded objects directly with a hemostat (#3097)
* You can now remove embedded objects directly with a hemostat (#56637)

* You can now remove embedded objects directly with a hemostat

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2021-02-05 21:19:35 +00:00
SkyratBot e890b1282b [MIRROR] Replaces intents with combat mode (#3063)
* Replaces intents with combat mode

* updates

* a

* Update living_defense.dm

* https://github.com/tgstation/tgstation/pull/56638/files

* gunsafety!

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-05 16:58:16 +01:00
SkyratBot b511bc53e6 [MIRROR] Makes emitters hitscan (#3047)
* Makes emitters hitscan (#56579)

* Makes emitters hitscan

* a

Co-authored-by: NotRanged <rangedvdk@gmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-03 22:37:40 +00:00
Azarak 311089f611 [WIP] Combat rework - less lethality, less hardstuns, nonlethal takedowns. Focus on combat ineffectivity (#1285)
* woo

* ye

* base done

* some stuff

* weh

* bang bang

* Update carbon_defense.dm

* stuff

* Update stunbaton.dm

* flash

* Update carbon.dm

* weh

* weh

* Update stun.dm

* weh

* Update combat.dm

* a

* aaa

* a

* aaaa

* aa

* hh

* h

* Update combat.dm

* a

* Update other_reagents.dm

* a

* Update pie.dm

* Update combat.dm

* Update pie.dm

* Update combat.dm

* Update combat.dm

* Update combat.dm

* aaa

* aaa

* a

* aaa

* Update combat.dm

* Update combat.dm

* aa

* aaa

* Update carbon_defense.dm

* Update living.dm

* aaa

* Update combat.dm

* aaaa

* Update combat.dm

* aaaa

* Update combat.dm

* Update cat2_medicine_reagents.dm

* Update combat.dm

* Update misc.dm

* Update misc.dm

* Update misc.dm

* Update door.dm

* a

* Update life.dm

* aaa

* aaa

* Update code/_onclick/item_attack.dm

* Update code/game/machinery/doors/airlock.dm

* Update code/game/machinery/doors/door.dm

* Update code/game/machinery/doors/door.dm

* Update code/game/objects/items/grenades/flashbang.dm

* Update modular_skyrat/master_files/code/modules/mob/living/carbon/carbon_say.dm

* Update modular_skyrat/modules/blueshield/code/game/objects/items/melee/misc.dm

* Update modular_skyrat/modules/blueshield/code/game/objects/items/melee/misc.dm

* Update modular_skyrat/modules/blueshield/code/game/objects/items/melee/misc.dm

* Update code/modules/surgery/bodyparts/parts.dm

* Update code/game/objects/items/grenades/flashbang.dm

* Update code/game/objects/items/grenades/flashbang.dm

* Update code/game/objects/items/grenades/flashbang.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/melee/misc.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/objects/items/stunbaton.dm

* Update code/game/turfs/open/_open.dm

* Update code/game/turfs/turf.dm

* Update code/modules/antagonists/abductor/equipment/abduction_gear.dm

* Apply suggestions from code review

* Update modular_skyrat/master_files/code/modules/mob/living/carbon/carbon_say.dm

Co-authored-by: Gandalf <jzo123@hotmail.com>
2021-01-29 23:16:05 +00:00
SkyratBot d581ef7a4b [MIRROR] The day has come gamers, the mosin nerf/rework (#2883)
* The day has come gamers, the mosin nerf/rework (#56319)

* THE NERF

* fixes a dumb mistake

* Sanity check and second thoughts

* mosin jamming

* adds the cleaning supplies, sprites, slight changes to dmg and jamming and HNNNG ONE LAST BUG

* adds maint kit to russian surplus, second try at fixing

* everything is fixed now :)

* finishing touches

* Last fix?

* fix

* fix var names

* a new sound and few more fixes

* add /brand_new variant to all ert/special spawned mosins, added a check if bolt is locked

* Bolt_locked is true when bolt is open 😂

* added a clamp just in case

Co-authored-by: Sparkezel <1haslo4@ gmail.com>

* The day has come gamers, the mosin nerf/rework

* Update to use our realism

Co-authored-by: Sparkezel <53384660+Sparkezel@users.noreply.github.com>
Co-authored-by: Sparkezel <1haslo4@ gmail.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-01-25 16:17:46 +00:00
SkyratBot a93664bc35 [MIRROR] [s] fixes damage multiplicative exploit with foam darts (#2799)
* [s] fixes damage multiplicative exploit with foam darts (#56250)

## About The Pull Request

fixes a pretty bad exploit with foam darts

## Why It's Good For The Game

- Modify a dart with a pen, giving it 5 damage
- Target someone's mouth (or a monkeyman)
- Fire
- Firing sequence for handle_suicide multiplies damage by 5 on the projectile instance
- Dropped projectile has 25
- Repeat 1 more time for 125 instacrit dart, or another time after that for 600 instakill dart

all discovery credits go to @ necromanceranne, this was brought to my attention

* [s] fixes damage multiplicative exploit with foam darts

Co-authored-by: silicons <2003111+silicons@users.noreply.github.com>
2021-01-20 02:39:51 +00:00
SkyratBot 5eb385092c [MIRROR] Adds Rocket Backblast (#2617)
* Adds Rocket Backblast (#55681)

This PR adds the backblast element, which when attached to a gun, creates giant plumes of fire when said gun is fired. The PM9 rocket launcher that nuke ops can buy kinda sucks and even a direct hit with the standard rockets loaded isn't enough to guarantee a one-hit crit on a direct hit against an armored opponent, which sucks for how much you pay for it. In that vein, I've also buffed the standard rockets a bit, they now do 50 brute up from 30 on a direct hit, and they create flames on their explosion.

Also makes a tweak to /proc/get_turf_in_angle(), since tile coordinates start at 1,1 instead of 0,0 that proc is now clamped to min 1,1 rather than 0,0

* Adds Rocket Backblast

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2021-01-10 08:35:51 +01:00
SkyratBot d7f054b035 [MIRROR] Refactors monkeys into a species (#2379)
* Refactors monkeys into a species

* aaa

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-31 21:08:07 +01:00
SkyratBot 579f5a0802 [MIRROR] increases shotgun slug damage (#2393)
* Merge pull request #55758 from InvalidArgument3/slugbuff

increases shotgun slug damage

* increases shotgun slug damage

Co-authored-by: 81Denton <32391752+81Denton@users.noreply.github.com>
2020-12-31 01:39:41 +00:00
SkyratBot c1aca48951 [MIRROR] [Fuck Shotties] Makes shotguns specialist weaponry. (#2321)
* [Fuck Shotties] Makes shotguns specialist weaponry. (#55663)

    Shotgun slugs can no longer be made in an autolathe.
    Buckshot rounds can no longer be made in an autolathe.
    Frag12 rounds deal less direct damage, since they fucking explode.
    Pulse shot rounds deal less damage.
    Increased the cooldown on riot shotguns.
    Removed buckshot rounds from all maps.
    Combat shotguns start with beanbags.

Why It's Good For The Game

Shotguns have been overpowered for too long. NT is lasers , syndicate is ballistics.

* [Fuck Shotties] Makes shotguns specialist weaponry.

Co-authored-by: EdgeLordExe <42111655+EdgeLordExe@users.noreply.github.com>
2020-12-27 15:23:07 +00:00
SkyratBot 9463423a05 [MIRROR] Syringe gun and rapid fire syringe gun nerfs, uplink reagent gun buffs. (#2285)
* Syringe gun and rapid fire syringe gun nerfs, uplink reagent gun buffs. (#55642)

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

* Syringe gun and rapid fire syringe gun nerfs, uplink reagent gun buffs.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
2020-12-23 06:27:38 +01:00
SkyratBot 18ca91f911 [MIRROR] Fixes magic locker sprite being weird (#2249)
* Fixes magic locker sprite being weird (#55589)

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

* Fixes magic locker sprite being weird

Co-authored-by: Time-Green <timkoster1@hotmail.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
2020-12-20 01:58:10 +01:00
SkyratBot 24743f2696 [MIRROR] Refactors Beams to use signals: Revived from 2019 edition! BONUS: Medbeams are also refactored to use signals (#2237)
* Refactors Beams to use signals: Revived from 2019 edition! BONUS: Medbeams are also refactored to use signals (#55193)

Huge removal of dead vars, bad timers, and other sloppy jitteriness from beams. They go from checking movement to waiting for a signal.
VARIABLE KILL LIST:

sleep_time: signals baby
finished: signals BAYBEEE
target_oldloc: not only not typecasted as a turf or named as a turf, it was unused. when are we going to use this? the beam starts from the origin!
origin_oldloc: bad name, not typecasted. renamed to originturf
static_beam: how are you an unused variable and still get replaced by signals like really
timing_id: signallllss bbbaaaabbyy
recalculating: you get the drill by now signals baby
base_icon: unused, seemingly replaced by visuals I think

* Refactors Beams to use signals: Revived from 2019 edition! BONUS: Medbeams are also refactored to use signals

Co-authored-by: tralezab <40974010+tralezab@users.noreply.github.com>
2020-12-19 04:42:09 +01:00
SkyratBot afce3e2a94 [MIRROR] pass_flags handling refactor + rewrites a part of projectiles for the n-th time (#2097)
* pass_flags handling refactor + rewrites a part of projectiles for the n-th time (#54924)

Yeah uhh this'll probably need testmerging even after it's done because yeah it's a bit big.
If y'all want me to atomize this into two PRs (pass flags vs projectiles) tell me please. Pass flags would have to go in first though, in that case, as new projectile hit handling will rely on pass_flags_self.
Pass flags:

Pass flags handling now uses an atom variable named pass_flags_self.
If any of these match a pass_flag on a thing trying to pass through, it's allowed through by default.
This makes overriding CanAllowThrough unnecessary for the majority of things. I've however not removed overrides for very.. weird cases, like plastic flaps which uses a prob(60) for letting PASSGLASS things through for god knows why.
LETPASSTHROW is now on pass_flags_self
Projectiles:

Not finalized yet, need to do something to make the system I have in mind have less unneeded overhead + snowflake

Basically, for piercing/phasing/otherwise projectiles that go through things instead of hitting the first dense object, I have them use pass_flags flags for two new variables, projectile_phasing and projectile_piercing. Anything with pass_flags_self in the former gets phased through entirely. Anything in the latter gets hit, and the projectile then goes through. on_hit will also register a piercing hit vs a normal hit (so things like missiles can only explode on a normal hit or otherwise, instead of exploding multiple times. Not needed as missiles qdel(src) right now but it's nice to have for the future).

I still need to decide what to do for hit handling proper, as Bump() is still preferred due to it not being as high-overhead as something like scanning on Moved(). I'm thinking I'll make Moved() only scan for cases where it needs to hit a non-dense object - a prone human the user clicked on, anything special like that. Don't know the exact specifics yet, which is why this is still WIP.

Projectiles now use check_pierce() to determine if it goes through something and hits it, doesn't hit it, or doesn't go through something at all (should delete self after hitting). Will likely make an on_pierce proc to be called post-piercing something so you can have !fun! things like projectiles that go down in damage after piercing something. This will likely deprecate the process_hit proc, or at least make it less awful.

scan_for_hit() is now used to attempt to hit something and will return whether the projectile got deleted or not. It will delete the projectile if the projectile does hit something and fails to pierce through it.

scan_moved_turf() (WIP) will be used for handling moving onto a turf.

permutated has been renamed to impacted. Ricocheting projectiles get it reset, allowing projectiles to pierce and potentially hit something again if it goes back around.

A new unit test has been added checking for projectiles with movement type of PHASING. This is because PHASING completely causes projectiles to break down as projectiles mainly sense collisions through Bump. The small boost in performance from using PHASING instead of having all pass flags active/overriding check_pierce is in my opinion not worth the extra snowflake in scan_moved_turf() I'd have to do to deal with having to check for hits manually rather than Bump()ing things.
Movement types

UNSTOPPABLE renamed to PHASING to better describe what it is, going through and crossing everything but not actually bumping.
Why It's Good For The Game

Better pass flags handling allows for less proc overrides, bitflag checks are far less expensive in general.

Fixes penetrating projectiles like sniper penetrators

This system also allows for better handling of piercing projectiles (see above) without too much snowflake code, as you'd only need to modify on_pierce() if you needed to do special handling like dampening damage per target pierced, and otherwise you could just use the standardized system and just set pass flags to what's needed. If you really need a projectile that pierces almost everything, override check_pierce(), which is still going to be easier than what was done before (even with snowflake handling of UNSTOPPABLE flag process_hit() was extremely ugly, now we don't rely on movement types at all.)

* pass_flags handling refactor + rewrites a part of projectiles for the n-th time

Co-authored-by: silicons <2003111+silicons@users.noreply.github.com>
2020-12-09 23:44:54 +01:00
Gandalf e360369041 Plasma cutter refactor [NON-MODULAR] (#2022)
* Update plasma.dm

* Update plasma.dm

* Update code/modules/projectiles/projectile/special/plasma.dm

Co-authored-by: Azarak <azarak10@gmail.com>

* Update plasma.dm

* Update code/modules/projectiles/projectile/special/plasma.dm

Co-authored-by: Azarak <azarak10@gmail.com>

* Update code/modules/projectiles/projectile/special/plasma.dm

Co-authored-by: Azarak <azarak10@gmail.com>

Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-03 18:26:30 +01:00
SkyratBot a25041431b [MIRROR] Humans have more complicated body temperatures (#1825)
* Humans have more complicated body temperatures (#54550)

This changes how carbon/humans stabilize body temperature, and changes how damage and wounds are applied based on temperature.

Humans now have a core body temperature along with body temperature. The core temperature is used for natural stabilization and what viruses like fever and shivers target by raising or lowing the core temperature of the mob.
The standard body temperature still exists and acts exactly the same for most items at this time but is now treated as surface temperature in humans.

Damage from body temperature for humans is now based on the core temperature instead of body temperature now.
Humans will now receive burn wounds when the body (surface) temperature is to high for to long.

This causes you to see alerts for the area temperature before you take damage in most cases improving visibility of dangerous situations.

* Humans have more complicated body temperatures

Co-authored-by: NightRed <nightred@gmail.com>
2020-11-25 13:56:04 +01:00
SkyratBot e52038974a [MIRROR] Foam darts and other unembeddable bullets will no longer leave ghost shrapnel (#1796)
* Foam darts and other unembeddable bullets will no longer leave ghost shrapnel (#54994)

Projectiles are assigned the ability to try embedding by the presence of a shrapnel_type variable being set on them, whether or not they actually have a set of embedding stats in their embedding var. By default, children of /obj/projectile/bullet have a shrapnel type set to a generic embedded bullet item, including things like foam darts and lollypop projectiles which shouldn't be able to embed (and certainly not embed as a bullet). While they had their embedding vars set to null, they still had their shrapnel_type set to the embedded bullet type, meaning shooting a person with a dart gun or whatever would leave a failed shrapnel item on the ground where they weren't supposed to.

This fixes that by requiring both a defined shrapnel_type AND a defined embedding var for the embedding stats. Any projectiles without both won't be able to try embedding. I also manually put 'shrapnel_type = null' on any bullet subtypes with embedding = null just to be safe and for consistency.

* Foam darts and other unembeddable bullets will no longer leave ghost shrapnel

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-11-24 08:34:46 +00:00
SkyratBot 2ff5f9b259 [MIRROR] Move death(), gib(), and dust() from /mob to /mob/living (#1634)
* Move death(), gib(), and dust() from /mob to /mob/living

* a

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-11-10 22:01:47 +01:00
SkyratBot 4df9bf0979 [MIRROR] Speargun: Now actually a gun! Again! (#1610)
* Speargun: Now actually a gun! Again! (#54289)

Turns the speargun from the syndikit bundle into a bolt action rifle instead of a pnuematic cannon.

The spears the rifle fires embeds using the new bullet embedding system by Ryll. The spears do a lot of fucking damage.

The new bundle includes:

The Ballistic Harpoon Gun

The weapon is a single shot rifle that can be loaded with harpoons. The rifle, being bolt action, requires pulling back the bolt, loading the new harpoon, then locking the bolt every time you wish to fire the weapon. This is more busy work than the pnuematic cannon version, but more reliable in functionality without any messy business with throwing.

The harpoons do 60 force, have a high wound chance against unarmored targets and very high embed chance, with a 100% against unarmored targets. They also have considerable armor piercing at 50, letting you nearly entirely shoot through a ballistic vest.

The weapon is essentially a powered-up single shot mosin or a significantly more powerful improvised shotgun filled with slugs.

The Quiver

Now a bag that goes on your belt. It holds up to 40 harpoons for your harpoon gun. This change was done because the harpoons cannot be retrieved, unlike the magspears, which were simply hacky ninja stars and could be pulled out with surgical tools/wirecutters. Previously you had 20 magspears, which because of their retrievable nature lasted a little longer than you would expect.

Sprites

New back sprites for the harpoon gun, ensuring nobody is missing it when you have it. Additionally, the Mosin Nagant now has it's back sprite as a suit storage sprite.

New sprite for the quiver.

* Speargun: Now actually a gun! Again!

Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2020-11-07 15:43:22 +00:00
Gandalf f9e3b58ecd Aesthetic Overhaul V3.0[SEMI-MODULAR][READY] (#1245)
* Begin

* few fixes

* WINDOWS

* Update airlock.dm

* Update status_display.dm

* Fixes plus rusty walls.

* Update walls.dm

* air alarm, intercom, apc updates, plasma windows, tinted, firealarm(todo)

* Update airlock.dm

* FINALLY FIXES THE DOORS

* Update airlock.dm

* firealarm and fixes.

* fixes

* mining vendor and washing machine

* firedoor

* blastdoor

* firealarm sound, shutters sound, blast door sounds.

* Delete window.dm

* Revert "Delete window.dm"

This reverts commit 4737c539eb9b49a526c784f45161c3189505ac57.

* fixes

* Update 2.0

newscaster DONE
bookshelf DONE
disposals chute DONE
chairs DONE
stools DONE
beds - Will upgrade later.
requests console DONE
light switch DONE
roller bed DONE
nanomed DONE
extinguisher cabnets DONE
extinguishers DONE
buttons
shield generators DONE
space heater DONE
emitter DONE
field generator DONE
rad collector DONE
cameras DONE
morgue units DONE
watercooler
bench Will upgrade later
E-N (corgi) port? Will do later.
plastic flaps Done
Guns - later

* fiox

* l o g i c

* Update extinguisher.dm

* V2.5

* racks and fixws

* computer typing noise

* gun sprite updates

* Update guns.dmi

* air alarm light mask

* better light overlays

* floors!

* gaygun, bench

* lasergun sounds - remove gun balance.

* no decals.

* Update intercom.dmi

* better directionals

* lasercannon, nucgun,

* Update laser.dm

* aaa

* aaa

* some sprite updates

* aaa

* shotgun suppressor+sound

* Update airlock.dm

* Update shieldgen.dmi

* chair fix, tools too.

* Update chairs.dmi
2020-11-01 16:35:39 +01:00
SkyratBot 970a2b03d6 [MIRROR] Mobility refactor: no more update_mobility() (#1233)
* Mobility refactor: no more update_mobility()

* Update robot.dm

Fixes robots.

* megadumb

* Update robot.dm

* weh

* Update gunpoint_datum.dm

Co-authored-by: Rohesie <rohesie@gmail.com>
Co-authored-by: Gandalf <jzo123@hotmail.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-10-10 02:31:35 +02:00
SkyratBot 7979f4d1b0 [MIRROR] Fully removes devil and affiliated shitcode (#922)
* Fully removes devil and affiliated shitcode (#53612)

Its all over the place, messy, and overall a bad enough gamemode to be removed from rotation.
A rework would have to tear out everything as is so there is no reason to allow the shitcode to live beyond tripping up everything.

* Fully removes devil and affiliated shitcode

* weh

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-09-23 10:00:29 +01:00
SkyratBot 14ec4abeaa [MIRROR] crystal invasion balancing and fixes (Now with extra rework!) (#690)
* crystal invasion balancing and fixes (Now with extra rework!) (#53399)

Refractored code so that the more_portals() proc gets called by the event instead of a CALLBACK
Balanced mobs spawn from portal and how much damage they deal
Fixed grammar stuff on crystal consume announcement
Ligthing aoe projectile now have a no_stun version for the boss rank
Lowered time needed to use the crystal stabilizer to 7 second total
Crystal mobs have TRAIT_TESLA_SHOCKIMMUNE to prevent boss from hurting himself and the other crystal mobs
Added check at start of event for presence of the supermatter crystal

New: Revamped event a bit, now instead of random portal appearing a random, there will be from 2 to 5 main portals and around those 6 more portals will appear; after that centcomm will announce the position of those new portals. Now the players will have to close those main portals before being able to stabilize the crystal because there will be a shield around it powered by those portals. Everything else will be the same (like how to close the portals and stabilize the crystal)

* crystal invasion balancing and fixes (Now with extra rework!)

Co-authored-by: Ghilker <42839747+Ghilker@users.noreply.github.com>
2020-09-09 08:11:07 +02:00
SkyratBot bc7192364f [MIRROR] Reduces the light range of all beam (lasers, disablers, emitter shots) projectiles (#689)
* Reduces the light range of all beam (lasers, disablers, emitter shots) projectiles (#53328)

* Reduces the light range of all beam (lasers, disablers, emitter shots) projectiles

Co-authored-by: Shirbu <maelstromdesu@gmail.com>
2020-09-09 08:10:47 +02:00
SkyratBot cd0d700a85 [MIRROR] Mecha refactor 2020 (#579)
* Mecha refactor 2020

* Update effects.dm

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-09-02 02:16:51 +02:00
SkyratBot d355e433d7 [MIRROR] Execution/gunpoint shots work properly with pellet clouds, buffs piercing wounds a bit (#541)
* Execution/gunpoint shots work properly with pellet clouds, buffs piercing wounds a bit (#52995)

Made a few changes to gunpoints and some related mechanics while tidying up and adding docs. Here's a quick list

-Execution (point blank help intent shot aimed at the mouth) and gunpoint shots now apply their bonuses to every pellet fired rather than only the first, generally making them gushier. They also buff wound power as well as damage
-You can no longer punch yourself while holding someone up to trigger the charged shot
-You can no longer purposely fail executions and gunpoints with pax or whatever to endlessly spike the damage in a loaded round
-Attacks with extremely high wounding power can now outright dismember limbs regardless of mangled status. The threshold is high enough that it mostly applies for admin edited weapons or execution shots with shotguns (or people with the frail quirk!)
-Piercing wounds make further wounds a bit easier to apply to give them a bit more power
-Hellguns now cost 2250 credits instead of 2000 to make them a bit harder for random crew to get
-Adds special bouncy L6 rounds for admins to use to bounce off anything and everything en-masse

Also as a minor note

Projectiles with no trajectory (meaning they were likely spawned in manually) now qdel themselves on bumping something, rather than runtiming helplessly

* Execution/gunpoint shots work properly with pellet clouds, buffs piercing wounds a bit

Co-authored-by: Ryll Ryll <3589655+Ryll-Ryll@users.noreply.github.com>
2020-08-27 03:14:47 +02:00
SkyratBot a5306924c3 [MIRROR] Makes reagent exposure methods bitflags (#527)
* Makes reagent exposure methods bitflags (#53164)

* Makes reagent exposure methods bitflags

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-08-26 02:37:07 +02:00
SkyratBot 3bd294f26f [MIRROR] Defines damage flags. (Hopefully without 50+ commits) (#491)
* Defines damage flags. (#53158)

* Defines damage flags. (Hopefully without 50+ commits)

Co-authored-by: TemporalOroboros <TemporalOroboros@gmail.com>
2020-08-24 22:52:31 +02:00
SkyratBot 0b65cc596b [MIRROR] Overlay lighting component (#469)
* Overlay lighting component (#52413)

Sparks no longer lag, projectile beams move super smoothly, same with mobs and whatnot. This also allows for easy expansion into directional lights, field-of-view, wee-woo rotating lights or whatever.

It does have a downside: things right-clicked or checked through the alt+click tab will show the light overlay:


This is a BYOND limitation, very well worth it IMO.

🆑
add: Smooth movable lighting system implemented. Projectiles, sparks, thrown flashlights or moving mobs with lights should be much smoother and less laggy.
balance: Light sources no longer stack in range, though they still do in intensity.
/🆑

* Overlay lighting component

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-23 20:17:12 +02:00
SkyratBot d3f6e8d49f [MIRROR] Explosions SS runtime fix + code cleanup (#461)
* Explosions SS runtime fix + code cleanup (#52894)

* runtime fix

* turf references are immortal

* Explosions SS runtime fix + code cleanup

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-21 21:30:43 +01:00
SkyratBot 035aebc2a2 [MIRROR] Diagonal macro thingu (#407)
* Diagonal macro thingu (#52927)

* Diagonal macro thingu

Co-authored-by: TiviPlus <57223640+TiviPlus@users.noreply.github.com>
2020-08-19 04:53:44 +02:00
SkyratBot ee324ab3c2 [MIRROR] Cleanup up all instances of using var/ definitions in proc parameters. (#240)
* Cleanup up all instances of using var/ definitions in proc parameters. (#52728)

* var/list cleanup

* The rest of the owl

* plushvar bad

* Can't follow my own advice.

* Cleanup up all instances of using var/ definitions in proc parameters.

Co-authored-by: Timberpoes <silent_insomnia_pp@hotmail.co.uk>
2020-08-07 18:26:21 +01:00
SkyratBot 5fd8cb072e [MIRROR] Color standardization, vars moved, and signals (#194)
* Color standardization, vars moved, and signals (#52574)

    Defined all the existing light_color values.
    Moved their definitions to colors.dm
    Made white the default color. It was so already, but that was very obscured.
    Moved the atom light-related variables to the atom definition.
    Wrapped changes to variables such as light_color into procs that report the event through signals.
    Moved the light_on variable to the atom level, also adding a signal for its changing, to represent toggling lights.
    Cleaned up a little bit of code in where new variables were defined before redefinitions.

This is all atomization to reduce changes in #52413
None of this affect gameplay at all, it's all code cleaning and refactoring.

There's more colors to standardize, a search for color = will find lots of targets, and I see little need to have both the LIGHT_COLOR and COLOR patterns, but I don't want to make this PR bigger than it already is.

* Color standardization, vars moved, and signals

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-04 12:20:31 +02:00
SkyratBot 724f9632b5 [MIRROR] [READY]syriniver nerfix / syringe projectile fix + various fixes requested by maintainer (#190)
* [READY]syriniver nerfix /  syringe projectile fix + various fixes requested by maintainer (#52019)

* syringe projectile fix

* greenman review

* oversight fix

* [READY]syriniver nerfix /  syringe projectile fix + various fixes requested by maintainer

Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com>
2020-08-04 12:18:41 +02:00
SkyratBot d44362146e [MIRROR] repaths neurotoxin + embedding changes in bullets + adds effects when you shoot energy weapons (#132)
* repaths neurotoxin + embedding changes in bullets + adds effects when you shoot energy weapons (#52543)

* how

* Update alien_powers.dm

* adds impact effects, makes thinks that shouldnt embed not embed

* rogue pixel moment

* repaths neurotoxin + embedding changes in bullets + adds effects when you shoot energy weapons

Co-authored-by: Fikou <piotrbryla@onet.pl>
2020-07-31 00:24:09 +02:00
Ryll Ryll a97c51b30b [READY] Wounds part 2: Piercing wounds, dismemberment changes, housekeeping (#51786)
* pierce the heavens

* starts doing projs

* continue pierce

* before armor

* before sharpness redefine

* rename sharp defines, before further implementation

* finishing undoing atk_type back to sharpness

* neatens up sharpness defines, FALSE -> SHARP_NONE

* more piercing, removes brute damage bleed, bubblegum no longer wound

* starts letting embeds get in on the fun

* half with embed

* work on dismembering

* continued embed work

* more moving bandaging to limbs

* more dismemberment work

* removing embed pierce stuff

* tweaking bullets

* more docs and work on dismemberment

* spans, piercing, guns

* dismemberment and scar fixes

* bee changes

* bullets embedding

* more bullet and dismember work

* dismemberment, surgery, piercing, formaldehyde,

* pleases travis

* pierce smite

* nicer on blood

* Auto stash before rebase of "tgstation/master"

* more neatening

* wounds only consider up to 35 damage, wounds on l6 and 762

* updates hulk

* balance

* defines

* lower slug to 50 brute to accommodate wounds

* adds differentiation for having flesh/bones/both in mobs

* moves scar descs to json, renames organic_state

* excises removed healing skill

* fixes logs, inconsistencies, some balance changes

* untab

* slight compress

* a

* kills pointed global list

* dmdoc

* halfway through roh

* finishes roh review

* okay NOW i finished roh's reviews

* roh roh roh your boat

* gently down the stream

* global lists

* list ops, fix scanner for bone gel improvised fix

* travis moment

* sounds added and moved

* pellet clouds can join the fun fully, slight gun balancing for wounds

* doc moment

* unconflicts myself

* update hulk

* Update code/_onclick/item_attack.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* crying ascii face

* final rohview

* oops

* final final

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-07-23 22:20:09 -04:00
jdawg1290 62676e72a8 Force LF line endings with gitattributes and convert repo (#52266)
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-07-16 03:02:40 +03:00
Paxilmaniac 54572041bd Adds smg to replace the mosin as nuke op surplus gun. Remake of #51285 (#51314)
* github makes my brain hurt

i managed to completely fuck over the last branch

* gun inhands

please god travis dont fail

* just learn the recoil pattern like cs:go bro its not that hard

5 more spread

* wtf appveyor

capitalizes the magazine name to make appveyor run again

* those were, in fact, not the correct inhands

dont know how i fucked up the arg inhands, urg moment indeed

* Update code/modules/projectiles/boxes_magazines/external/smg.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* fixes a minor sprite fucky wucky

would have helped if i actually tested if the sprites work

Co-authored-by: Rohesie <rohesie@gmail.com>
2020-06-22 16:25:39 -03:00