Commit Graph

233 Commits

Author SHA1 Message Date
ShizCalev
5d91844926 Fixes suppressing weapons in your bag / pocket (#30894)
* Fixes suppressing in pocked and w_class issues

* Used defines for some things

* Reworded

* Removed the now redundant initial_w_class var

* Early returns

* Null
2017-09-26 11:19:00 +02:00
Ian Turk
7460f2c5b8 Replaced flags with flags_1 2017-08-16 13:01:15 -06:00
Jordan Brown
af4d9a85c9 Repaths /obj/item/weapon to /obj/item (#29929) 2017-08-16 10:38:51 -03:00
shizcalev
2a5df54e7c moved can_trigger_gun to weapon parent 2017-08-14 13:30:20 -04:00
Ashe Higgs
0a32812982 Separates actions.dmi into multiple files (#29587)
actions.dmi is way too cluttered and messy, and with inhands getting the axe I decided to fix this, too. I separated the major categories of actions into their own files, like antagonist-specific actions and spells. A full list of categories is found here:

    actions_AI.dmi contains AI-specific actions;
    actions_clockcult.dmi contains clockcult-specific actions, and scripture quickbind icons;
    actions_cult.dmi contains cult-specific actions as well as sintouch;
    actions_flightsuit.dmi contains flightsuit and flightpack actions;
    actions_items.dmi contains minor item-specific actions such as the hierophant club and jetboots;
    actions_mecha.dmi contains actions related to mechs;
    actions_minor_antag.dmi contains antag-related actions with no other spot, like devils/abductors;
    actions_revenant.dmi contains revenant ability icons;
    actions_silicon.dmi contains minor silicon and console icons, like pAI and xenobiology consoles;
    actions_slime.dmi contains slime actions;
    actions_spells.dmi contains icons for all spells;
    actions_xeno.dmi contains icons for all xeno actions; and
    backgrounds.dmi contains backgrounds for the action buttons.
2017-08-01 14:26:42 +12:00
ShizCalev
d525b18d8d Completes major inhand split project (#29574)
* Completes split project

* More work on it. Should be more or less finished
2017-07-29 16:47:37 -03:00
Xhuis
35c396be90 Fixes some zooming weirdness 2017-07-25 11:27:13 -04:00
kevinz000
b09e519584 Beam Rifle Zooming Rework + Click catcher memes + bunch of other random stuff that players won't use (#28551)
Click catcher now supports mousemove/mousedrag. Basically, mouse location can now be captured even if the user isn't mousing over a visible location
    Added procs to allow for projectiles to be fired with just an angle for pixel projectiles, instead of requiring a target turf and pixel x/y
    Added procs to get angle of user's mouse from their viewpoint (Time to rework gang machine guns again!)
    Beam rifles now have different zoom modes
    Free directional zooms out and tracks the angle of your mouse from the center of the screen. However, you can't target with very good accuracy on this (Shots can't be properly aimed on non dense objects/lying down mobs.)
    Locked directional zooms like free directional but doesn't automatically turn if your aim changes.
    Center view, just increases your view in all directions (2x weaker)
    No zoom mode, in which you just retain your normal view.
    You can select beam rifle zooming rates to be instant or stepped.
    Stepped zooming rates zoom out 5 tiles per second. This will likely help with people not being able to use it without lagging because their computers aren't as beefy!
    Beam rifles no longer require zoom to be fired
    Beam rifle aiming beams now instantly update instead of on process
    Beam rifle aiming beams are now one object instead of 150. This'll help with the lag caused by it during gameplay that I've observed.
    Angular penalty reduced by 0.1 for a nice even number.
    Instances of client.view = have been replaced with client.change_view() as that'll properly update the click catcher
    Hopefully shooting yourself in the face when you hit a blob tile or whatnot is fixed with the new and improved code..
2017-07-17 12:13:03 +12:00
Really-Good-Soda-Flavor
40de86de35 Moves reskinning items to /obj (#28558) 2017-06-21 15:19:17 -03:00
Joan Lung
2672d88800 Renames stun effects and changes stun input values as preliminary work for changing stuns to status effects (#28524) 2017-06-18 23:03:51 -03:00
kevinz000
99138f12d0 I might HAVE accidently made dualwielding hilariously OP again so have a nerf! (#28125) 2017-06-07 11:13:57 -03:00
kevinz000
66789e4fbd !!!Projectile spread tweaks!!! <-- Yes, this is a huge balance change for dualwielding! (#27754)
* Update gun.dm

* Update gun.dm
2017-05-30 10:21:41 -06:00
kevinz000
29a1734b3c [READY]Replaces R&D accelerator laser with beam rifle, adds MouseMove and mouse parameter tracking to client, adds blast cannons! (#27618)
kevinz shitcode
2017-05-29 20:44:42 -05:00
kevinz000
6cfbab9e2e Update gun.dm (#27776) 2017-05-29 02:15:47 -04:00
Leo
ae20ffdb77 Merge pull request #27715 from QualityVan/bayonetbutchering
Lets bayonets butcher, fixes bayoneting typo
2017-05-27 22:47:49 -03:00
Leo
ab1999e026 Merge pull request #27681 from Cyberboss/GunInit
Ports guns to Initialize
2017-05-26 21:05:55 -03:00
QualityVan
a86f2fc252 Lets bayonets butcher, fixes bayoneting typo 2017-05-26 16:25:35 -04:00
kevinz000
d536bf6caf [READY] Adds ability to add bayonets to weapons - Only enabled on kinetic accelerators - refactors gunlight/bayonet sprites to ballistics too (#27416)
* hm

* separation part 1

* fixes and more fixes

* gunlight minirefactor

* refactor

* done
2017-05-26 10:37:10 +02:00
Cyberboss
7a4f640eec Ports guns to Initialize 2017-05-25 19:51:08 -04:00
Cyberboss
729010bbb2 Unorphans the blackbox (#26129)
Moved sql_poll_population from server_maint to this new SS. Moved few remaining server_maint tasks to SSping and deleted it.
2017-04-27 10:04:57 +12:00
Joan Lung
ee763a5aa4 Removes a few spawns (#26507) 2017-04-25 16:36:07 -03:00
Lzimann
5a618297ce Replaces the default output with the to_chat wrapper. 2017-03-10 01:32:05 -03:00
PJB3005
8ce6ae2b87 Merge remote-tracking branch 'upstream/master' into rebase-to-vg 2017-02-08 14:30:23 +01:00
Xhuis
c038691d10 Adds the reverse revolver for traitor clowns (#23763)
* Adds the reverse revolver for traitor clownes

* [user.p_them()]self

* ()
2017-02-07 16:26:04 -06:00
Cyberboss
3f7f5d4000 Removes/Refactors /mob/unEquip (#22918)
* Part1

* IT COMPILES!!!!

* Fuck wait this was missing from that last

* Update handlabeler.dm

* Update handlabeler.dm

* Fixes n shit

* Fix this

* Fixes #23310

* Fucking @RemieRichards was right

* Fixes devil unEquip

* WTF ARE BITFLAGS?

* THERES THE FUCKING PROBLEM

* Fixes
2017-01-31 09:28:31 +13:00
PJB3005
e2386a8bd8 Have some code 2017-01-17 22:54:05 +01:00
PJB3005
7356e80484 hey that should be everything except making it compile. 2017-01-17 22:08:27 +01:00
bgobandit
119747bb78 misleading medibeam message 2017-01-08 03:13:53 -05:00
ExcessiveUseOfCobblestone
7ab477a06a Small Renaming Oversights (#22068)
* small oversights h-h-honk

* honk

* does the joan

* keeping tabs

* fixes else ..()
2016-12-11 19:51:53 +13:00
Joan Lung
e6df49f3de Revert "Removes left inhand files, automatically mirrors inhands" (#22085) 2016-12-09 18:27:25 -05:00
KorPhaeron
ace673e829 Removes left inhand files, automatically mirrors inhands 2016-12-07 23:34:12 -06:00
Mervill
0972f78800 a_intent now uses defines 2016-12-02 22:27:30 -08:00
Mervill
09ea5ad2e5 w_class now uses defines 2016-12-01 21:33:14 -08:00
Mervill
b5578df27d corrects some defs without leading slash (#21843) 2016-11-30 20:05:14 +13:00
KorPhaeron
a643cb92f0 Dual (or more!) Wielding (#21397)
* Dual (or more!) Wielding

* Removes an extra line

* Shotguns can't be dual wielded
2016-11-14 12:02:00 +13:00
phil235
b7efc2cef4 Make energy guns able to use burst fire. (#21005)
* Make energy guns able to use burst fire.

* Changed obj/item/weapon/gun/projectile to /gun/ballistic and the name of the folder from "projectile" to "ballistic" to avoid confusion between actually projectiles and guns.

Syringe gun, energy guns and magic guns can now use burst fire.

* fixing merge conflict shit

* fixing map conflicts

* more map conflict fix

* two tiny fixes.

* tiny tweak

* fixing merge conflicts.
Moving the practice mini egun to the gun module.
Renamed nuclear.dm to energy_gun.dm

* map conflict fixes
2016-11-02 16:16:21 +13:00
Lzimann
90d76b652c You can see your own attack log once again 2016-10-28 17:35:22 -02:00
Joan Lung
7f89fdf39f The range for combat-y visible messages is now a define (#21077) 2016-10-21 15:20:14 +13:00
Joan Lung
4cddd81120 Suicide now uses the pronoun helpers (#20973)
* This doesn't actually matter, because you're dead forever once it happens...

* is this entire pr chaff for something else

* you'll do it? nah, fuck that I'll do it
2016-10-18 14:36:38 +13:00
phil235
f9c71fbfb0 Made some slightly less uglier sprites for attack effects.dmi
Melee attacks, gun firing, and things being hit by bullets will now still give witnesses a message, but only if they are less than 3 tiles away. The attacker still doesn't get the message for its own attacks.

I added two arguments to visible_message(), one to specify the visibility range, and one to ignore a specific mob that shouldn't get the message.
2016-10-15 16:10:28 +02:00
phil235
1ea0e47aa4 Visible_message() when being attacked by melee or projectile is replaced by a simple message only to the target instead of all viewers.
The message when firing a gun is removed.
To keep things balanced melee attacks (punches, alien attacks, animal attacks, etc...) now show a visual effect (similar to what we current have with item attacks.
Fixes muzzle flash effect not appearing for mech guns.
Fixes muzzle flash effect not appearing for certain ranged animal.
Fixes the item attack effect not being visible to camera viewers and mech occupants.
Fixes toy guns foam dart not dropping on the ground when shooting a mob on the same tile as us.
Fixes toy smg magazine sprite being invisible sometimes.
Fixes foam dart not facing the correct direction when fired.
Changes the bullet projectile sprite to have a slight tracer effect so as to be more visible.
2016-10-13 19:21:30 +02:00
Joan Lung
ce40d29ead Makes the pronoun helper proc names less horrifyingly long (#20780)
* why were these so LONG, what the fuck

* gosh

* pronoun agenda
the true agenda is killing coiax's squished lines
2016-10-10 12:28:25 +13:00
phil235
5f835bfc26 Obj damaging system, acid damage, and fire damage refactor (WIP) (#20793)
Please refer to #20867 and #20870 for a easier view of the changes. Those two PRs show all meaningful changes (hopefully) and doesn't show the files changed with just 3 lines changed.

This PR does three things:

    It makes all children of /obj/ use the same damage system.
    Previously to make your new machine/structure be destroyable you needed to give it a var/health, and its own version of many damage related proc such as bullet_act(), take_damage(), attacked_by(), attack_animal(), attack_hulk(), ex_act(), etc... But now, all /obj/ use the same version of those procs at the /obj/ level in code/game/obj_defense.dm. All these obj share the same necessary vars: obj_integrity (health), max_integrity, integrity_failure (optional, below that health level failure happens), and the armor list var which was previously only for items, as well as the resistance_flags bitfield. When you want your new object to be destroyable, you only have to give it a value for those vars and maybe override one proc if you want a special behavior but that's it. This reorganization removes a lot of copypasta (most bullet_act() version for each obj were nearly identical). Two new elements are added to the armor list var: fire and acid armor values.
    How much damage an obj take depends on the armor value for each damage category. But some objects are INDESTRUCTIBLE and simply never take any damage no matter the type.
    The armor categories are:
    -melee(punches, item attacks, xeno/animal/hulk attacks, blob attacks, thrown weapons)
    -bullet
    -laser
    -energy (used by projectiles like ionrifle, taser, and also by EMPs)
    -bio (unused for this, only here because clothes use them when worn)
    -rad (same)
    -bomb (self-explanatory)
    -fire (for fire damage, not for heat damage though)
    -acid
    For machines and structures, when their health reaches zero the object is not just deleted but gets somewhat forcedeconstructed (the proc used is shared with the actual deconstruction system) which can drops things. To not frustrates players most of these objects drop most of the elements necessary to rebuild them (think window dropping shards). Machines drop a machine frame and all components for example (but the frame can then be itself smashed to pieces).
    For clothes, when they are damaged, they get a "damaged" overlay, which can also be seen when worn, similar to the "bloody" overlay.

    It refactors acid. See #20537.
    Some objects are ACID_PROOF and take no damage from acid, while others take varying amounts
    of damage depending on their acid armor value. Some objects are even UNACIDABLE, no acid effect can even land on them. Acid on objects can be washed off using water.

    It changes some aspect of damage from fires.
    All /obj/ can now take fire damage and be flammable, instead of just items. And instead of having just FLAMMABLE objs that become ON_FIRE as soon as some fire touch them (paper), we now have objects that are non flammable but do take damage from fire and become ashes if their health reaches zero (only for items). The damage taken varies depending on the obj's fire armor value and total health. There's also still obj and items that are FIRE_PROOF (although some might still be melted by lava if they're not LAVA_PROOF).
    When a mob is on fire, its clothes now take fire damage and can turn to ashes. Similarly, when a mob takes melee damages, its clothes gets damaged a bit and can turn to shreds. You can repair clothes with cloth that is produceable by botany's biogenerator.

    It also does many minor things:
        Clicking a structure/machine with an item on help intent never results in an attack (so you don't destroy a structure while trying to figure out which tool to use).
        I moved a lot of objects away from /obj/effect, it should only be used for visual effects, decals and stuff, not for things you can hit and destroy.
        I tweaked a bit how clothes shredding from bombs work.
        I made a machine or structure un/anchorable with the wrench, I don't remember which object...
        Since I changed the meaning of the FIRE_PROOF bitflag to actually mean fire immune, I'm buffing the slime extract that you apply on items to make them fire proof. well now they're really 100% fire proof!
        animals with environment_smash = 1 no longer one-hit destroy tables and stuff, we give them a decent obj_damage value so they can destroy most obj relatively fast depending on the animal.
        Probably a million things I forgot.

If you want to know how the damage system works all you need is the three obj vars "obj_integrity", "max_integrity", "integrity_failure", as well as the armor list var and the resistance_flags bitfield, and read the file obj_defense.dm
2016-10-10 11:14:59 +13:00
Joan Lung
29b4c6a8ff like a furious buzzing bee, or some metaphor or something. 2016-09-26 16:50:49 -04:00
TechnoAlchemist
eec3391270 Allows for sabre renaming. (#20367)
* Allows for sabre renaming.

* That's not supposed to be there

* Applies unique_rename to all /weapons

* fixes my stupid asshole
2016-09-13 09:05:30 +12:00
Remie Richards
00738bd2a3 More than 2 hands!? WHAAAAAAT 2016-09-02 16:10:16 +01:00
MrStonedOne
83eca75951 Removes unneeded lighting checks. 2016-08-22 08:56:53 -07:00
coiax
3796656340 Adds ammo drops to CTF, fixes reload bug (#19125)
* My bed broke

* Slow healing, nodrop items

* Mark arena as dirty when stopping ctf

* Fixes spooky zombie projectile bug
2016-07-06 07:53:30 -04:00
kevinz000
cb907d1ada itworksedition 2016-06-09 18:55:25 -07:00
kevinz000
31de8f4ec2 allgunsnowburnright 2016-06-09 18:53:06 -07:00