Commit Graph

130 Commits

Author SHA1 Message Date
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
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
2013fdbbe9 [MIRROR] Makes borg organ bags into an apparatus (#3106)
* Makes borg organ bags into an apparatus

* Update robot_modules.dm

* Update highlander.dm

* Update highlander.dm

* Update robot_modules.dm

* Update robot_modules.dm

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

Co-authored-by: dragomagol <66640614+dragomagol@users.noreply.github.com>
Co-authored-by: Gandalf2k15 <jzo123@hotmail.com>
2021-02-05 22:21:36 +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
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
4f2588e6bc [MIRROR] Refactor on_mob_death, death implants, implant permission (#2432)
* Refactor on_mob_death, death implants, implant permission (#55862)

* Refactor on_mob_death and death implants

There is a proc on `/obj/item` called `on_mob_death` called on all
items in the contents of a mob on that mob's death. It is currently used
for explosive implant detonation, and the deactivation of the
Peaceborg's projectile dampener.

Instead of using this old proc, both of them now instad use the
COMSIG_LIVING_DEATH signal, already emitted when their owner dies.

The activation of an explosive implant will now occur after the rest of
the death code has run, since it activates with an async applied
function, since some other implants may still want the mob's body
intact, and you shouldn't use `sleep()` (which it does in the "slow
explosion mode") in signal handlers.

In addition, the "can_be_implanted" proc for /mob/living (and overriden
for silicons, slimes and simple animals) has been folded into the
`/obj/item/implant/proc/can_be_implanted_to` proc. Some future implants
may want to be more permissive than the current permissions, but that
isn't possible when checking both procs.

* Refactor on_mob_death, death implants, implant permission

Co-authored-by: coiax <yellowbounder@gmail.com>
2021-01-01 22:17:15 +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
2913364658 [MIRROR] Kills oldfood, Puts newfood on top. (#2041)
* Kills oldfood, Puts newfood on top. (#55160)

Slays the last of old-food, making new-food the new normal.

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

* Kills oldfood, Puts newfood on top.

* Update collars.dm

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
Co-authored-by: MrMelbert <kmelbert4@ gmail.com>
Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@ users.noreply.github.com>
Co-authored-by: Azarak <azarak10@gmail.com>
2020-12-04 16:46:26 +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
89a8cb991a [MIRROR] moves misc food to newfood code (#1725)
* moves misc food to newfood code (#54788)

misc food is now using newfood code

* moves misc food to newfood code

Co-authored-by: Qustinnus <Floydje123@hotmail.com>
2020-11-19 07:21:23 +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
1e705faa19 [MIRROR] Process procs now properly utilize deltatime when implementing rates, timers and probabilities (#709)
* Process procs now properly utilize deltatime when implementing rates, timers and probabilities (#52981)

* Process procs now properly use deltatime when implementing rates, timers and probabilities

* Review fixes

* Geiger counters cleanup

Made hardsuit geiger code more similar to geiger counter code
Geiger counters are more responsive now

* Moved SS*_DT defines to subsystems.dm

* Rebase fix

* Redefined the SS*_DT defines to use the subsystem wait vars

* Implemented suggested changes by @AnturK

* Commented /datum/proc/process about the deltatime stuff

* Send delta_time as a process parameter instead of the defines

Also DTfied acid_processing

* Dtfied new acid component

* Process procs now properly utilize deltatime when implementing rates, timers and probabilities

Co-authored-by: Donkie <daniel.cf.hultgren@gmail.com>
2020-09-09 08:19:23 +02:00
SkyratBot
20ff97d772 [MIRROR] Janiborgs can now repair damaged hull platings (#640)
* Janiborgs can now repair damaged hull platings (#53183)

The "plating repair tool" has been added to the game in the form of a 
printable upgrade for janiborgs. It's a subtype of the cautery that can 
repair burnt or damaged hull platings, allowing floor tiles to be 
placed over them once again.

The upgrade that adds it to a janiborg's list of tools can be printed 
once the Cyborg Upgrades: Utility tech node is researched.

Janiborgs get floor tiles (and a crowbar), but have no way of dealing 
with burnt platings. Thus, what ends up happening is that, after fixing 
some flooring after a minor explosion, you'll often be left with one or 
two ugly, OCD-triggering untiled spots on the floor that you can't put 
a floor tile over because you don't have a welder. What makes these 
spots even more infuriating is that it would actually be BETTER if they 
had been broken down to just being space-exposed rods, because then you 
COULD place a floor tile on their tile.

* Janiborgs can now repair damaged hull platings

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
2020-09-06 05:09:42 +02:00
SkyratBot
1f7572847a [MIRROR] Petting more animals now causes floating hearts and a moodlet, borgs can now pet animals. (#243)
* Petting more animals now causes floating hearts and a moodlet, borgs can now pet animals. (#52594)

* Petting.

* Oops.

* Update code/modules/mob/living/simple_animal/friendly/penguin.dm

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

* Working on underlying redo.

* More.

* Fixing to work with new emote system.

* Move proc and defines to living instead of mob.

* ...Moves it to simple_animal instead.

* Revert cat crate fix (other PR handling), fixes emote thing.

* Appveyor did not care for that.

* Comment typo.

* Very descriptive var name.

* Borgs can now commit pet.

* sweeps up missing manual_emotes, adds a hop to link for ghosts, and moves the name preface to ghost only

* More descriptive vars and proc name.

* Better descriptive vars.

* Making the borg code slightly nicer.

Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>

* Petting more animals now causes floating hearts and a moodlet, borgs can now pet animals.

Co-authored-by: uomo <51800976+uomo91@users.noreply.github.com>
Co-authored-by: Fikou <piotrbryla@onet.pl>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2020-08-08 02:08:14 +01:00
SkyratBot
c5c00fc6ff [MIRROR] Confusion will no longer continue to confuse after being cured (#213)
* Confusion will no longer continue to confuse after being cured (#52286)

* Confusion will no longer continue to confuse after being cured

* Grammar comment fix

* Move to status effect

* Remove test per request

* Make confusion a status effect, confusion curing now completely neuters the confusion

* set_confusion changes, get_confusion

* Fix confusion going down twice per tick

* Change strength = to proc

* Move procs to status_procs

* Confusion will no longer continue to confuse after being cured

Co-authored-by: Jared-Fogle <35135081+Jared-Fogle@users.noreply.github.com>
2020-08-06 01:02:19 +01:00
Ryll Ryll
fb95f0a87f Fixes lollipop embedding, emagged mediborg pops can now embed (#52512)
* ohhh lolly lolly

* fix blood
2020-07-27 22:05:51 -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
nemvar
b87f65d95e Converts ALL typepaths to lowercase (#51642)
* Case of lower

* More changes

* Ruins the nice 420 diff, brainfart when doing the second batch of conversions

* More changes

* Next batch. I think

* Converts even more paths

* Restarts bots

* Capital Free Zone

* Come on travis, do something

* Renames areas

* Bots, please stop dying

* Updates CONTRIBUTING.md and updates a few paths I missed.

* APC recgarftzfvas
/obj/item/computer_hardware/recharger/apc to /obj/item/computer_hardware/recharger/apc_recharger
2020-06-17 20:47:57 -03:00
Rodey125
99de66975b Gumballs and spider lollipops can now be put in your mouth and chewed/sucked! (#50785)
* Gumballs and spider lollipops can now be put in your mouth and chewed/sucked!

fixes inconsistencies with gumballs and lollipops

* Update recipes_misc.dm
2020-05-11 10:08:23 -04:00
Brett Williams
1a1d7d0a97 fix 2020-04-18 13:14:19 -03:00
kingofkosmos
79c5a80ca0 Visible_messages verb time tenses changed to present. 2020-03-16 14:55:25 +02:00
Mickyan
cebc8d428e Merge branch 'master' of https://github.com/tgstation/tgstation into chewing_gum 2020-02-20 16:09:01 +01:00
ShizCalev
7209ac3c93 Removes unnessacary math defines 2020-02-17 23:09:09 -05:00
Mickyan
84aadd8897 things 2020-02-11 20:37:23 +01:00
Rohesie
7bef84f009 Mass-replacement of stat to machine_stat (#48758)
Living and machine stat vars are pretty different, one uses flags and other number-defines.
This should make some other mass-replacements and searches a bit easier.
2020-01-24 12:37:17 +13:00
kevinz000
e8b8894efc Update robot_items.dm (#48930) 2020-01-23 09:29:15 -05:00
MrPerson
e22560a346 update_icon() improvements (#48669)
* update_icon() improvements

Fixes some update_icon() calls to properly call parent and use update_overlays() and update_icon_state().

The rest of obj/item fuck it

* Suggested fixes, also passes the linter

* I always forget . = ..() is faster than return ..() FOR SOME FUCKING REASON

* Actually this is better

* Signilzes datum/action to update its icon when its connected item does.
2020-01-11 23:46:43 -05:00
Anonmare
fd08e36069 Makes the service cyborg competent at bartending (#47385)
* service borg gang

* Update borghydro.dm

* Update robot_modules.dm

* Wow I can't believe it took me 12 hours to find

* Update robot_modules.dm
2019-10-30 16:29:33 -07:00
Emmett Gaines
8982f509b5 Refactors screen object update_icon to call parent (#47094)
* Refactors screen object update_icon to call parent

And makes update_icon an /atom proc

* Cleans up some missed null checks

The student teaches the master
2019-10-17 18:21:50 -07:00
KomradeSpectre
9ff071af60 Clockcult Removal 2019 (#47057)
* Nanotrasen fires the Wave Motion Gun at the Clock Cult

* Fixes a random changelog appearing from the reebe void.

* Fixes a wrong type reference regarding the bronze sheets in the Lavaland Ruin for it.

* Fixes redundant cells after CC removal in ruin by populating them with varied ore chunks, or destruction clutter.

* why is it /obj/item/stack/sheet/metal but not /obj/item/stack/sheet/iron

* Fixes the lavaland ratvar ruin to have fluff variant structures of deleted shit it referenced instead what I thought was reasonable.
2019-10-15 10:13:41 +02: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
nemvar
daffaefb71 Switches out the three billion args of electrocute act for flags (#46564)
* Switches out the three billion args of electrocute act for flags

* Adds autodoc to electrocute flags, sets the boolean I removed and tries to fix the ed209 file

* tries to fix ed209 again

* Fixes 209 hopefully

* Finally fixes that darn file

* one final one to fix the diff

* Or i guess i'll just do it myself
2019-10-02 23:14:19 +02:00
spookydonut
210ba5c571 Adds linting for equipped() pickup() dropped() (#46614)
* lint some inventory procs

* lineends

* f

*  line end

* lineend

* fuck

* changes per review
2019-09-25 02:31:29 -07:00
zxaber
0a73280344 Adds engiborg circuit manipulator and extra mediborg beaker holder as upgrades (#46286)
* stuff and things

* almost forgot this part

* oops

* small fixes
2019-09-16 14:28:45 -04:00
kingofkosmos
8358169b8e New 'hear' span class (#46369)
* Reverts italics-span back to no color.

* Cleans up many extra spaces and indents.

* Adds 'hear' span class.

* Replaces all 'italics' used in heard messages with 'hear'.
2019-09-14 23:56:34 -07:00
Rob Bailey
2029163d33 playsound vary boolean define conversion (#46254)
About The Pull Request

Converts every single usage of playsound's vary parameter to use the boolean define instead of 1 or 0. I'm tired of people copypasting the incorrect usage.
Also changes a couple of places where a list was picked from instead of using get_sfx internal calls

This was done via regex:
(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\)) to match 1
(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\)) to match 0
full sed commands:
/(playsound\(.+,.+,.+, ?)1( ?\)| ?,.+\))/\1TRUE\2/ 1 to TRUE
/(playsound\(.+,.+,.+, ?)0( ?\)| ?,.+\))/\1FALSE\2/ 0 to FALSE

I'm not very good with regex and these could probably be optimized, but they worked.
Why It's Good For The Game

Code usability
2019-08-30 18:45:20 +12:00
kingofkosmos
81a0518474 * warning-spans added to cases of "You do not..." and "You don't..." 2019-06-25 22:05:55 +03:00
vuonojenmustaturska
b076b6c6d5 Fix another source of /datum/reagent/vanilla ice cream (#44543) 2019-06-16 11:43:29 -07: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
vuonojenmustaturska
6a106bc877 Remove reagent ids and use typepaths where applicable (#44166)
cl Naksu
code: reagent IDs have been removed in favor using reagent typepaths where applicable
fix: mechas, borg hyposprays etc no longer display internal reagent ids to the player
/cl
2019-05-31 21:57:26 +12:00
nicbn
c4213f13ab New() -> Initialize() (#41876) 2019-01-03 18:56:15 -08:00
kevinz000
3e7184c975 Combat/Stun (slip) overhaul staging, mobility flags, adds crawling (#39967)
Aiming to implement the framework oranges has detailed in https://tgstation13.org/phpBB/viewtopic.php?f=10&t=19102
Moves canmove to a bitflag in a new variable called mobility_flags, that will allow finer grain control of what someone can do codewise, for example, letting them move but not stand up, or stand up but not move.

Adds Immobilize()d status effect that freezes movement but does not prevent anything else.
Adds Paralyze()d which is oldstun "You can't do anything at all and knock down).
Stun() will now prevent any item/UI usage and movement (which is similar to before).
Knockdown() will now only knockdown without preventing item usage/movement.
People knocked down will be able to crawl at softcrit-speeds
Refactors some /mob variables and procs to /mob/living.
update_canmove() refactored to update_mobility() and will handle mobility_flags instead of the removed canmove

cl
rscadd: Crawling is now possible if you are down but not stunned. Obviously, you will be slower.
/cl
Refactors are done. I'd rather get this merged faster than try to fine tune stuff like slips. The most obvious gameplay effect this pr has will be crawling, and I believe I made tiny tweaks but I can't find it Anything I missed or weird behavior should be reported.
2018-10-11 11:22:21 +13:00
Patrick Chieppe
2c8248575a Logging system refactor and improvement (#39521)
* Refactor several log lines to use datum_info_line and atom_loc_line

* Add default return strings from datum_info_line and atom_loc_line

* Add parentheses around atom_loc_line data

* Change more logs to use atom_loc_line

* Add check in atom_loc_line for turfs to avoid calling get_turf on them

* Re-add removed 'at'

* Replace datum_info_line with key_name and atom_loc_line with loc_name

* Refactor logging functions

* Avoid double-logging self-interactions

* Fallback to simple stringification if all else fails in key_name()

* Rewrite muscle spasm logging to use log_message

* Standardize logging of martial arts

* Tweak individual logging panel look

* Fix individual logging panel source

* When I typed || I really meant &&

* Fix Telecomms logging always showing client logs in the panel

* Reverts addition of buggy ownership log to panel

* Remove colon

* Fix missing log_directed_talk tag

* Add warning for missing type in log_direted_talk

* Change warnings to stack_traces

* Add square brackets around fallthrough key_name() case to help parsing

* Allow atom arguments/src in log_*() functions

* Change log_combat call with null argument to log_message

* Change mecha types' log_message() arguments to match atom and mob version

* Add key_name() case for atoms

* Fix resist_grab() unsetting pulledby before log_combat gets a chance to use it

* Fix log_globally logic

* Add logging for hitting objects with items

* Move log_combat() to atoms.dm

* Use utility functions for object stringification in log_combat()

* Use utility functions for object stringification in log_combat()

* Add missing logs for interacting with display cases

* Rewrite log_combat() comment

* Add missing space in log_combat()

* Add logging for hitting grilles barehanded

* Add missing ..()
2018-08-12 21:41:09 +02:00
Trevor Serpas
bee0b5b2c3 Afterattack() Signal (#38606)
* adds signal and modifies each call of afterattack to call it's inherited proc

* uses new macro for sendsignal()

* map fuck

* skip precommithooks

* combine and negate 2 ifs
2018-07-07 02:00:25 -04:00
ShizCalev
ff532a4ca4 Spellchecks TGStation 2018-06-19 18:57:44 -04:00
ShizCalev
3abd2b6d27 Cleans up logging 2018-06-09 15:51:58 -04:00
vuonojenmustaturska
c65a99f130 Move NODROP_1, DROPDEL_1, ABSTRACT_1 and NOBLUDGEON_1 to item_flags where they belong (#38171)
* (mostly) nodrop

* (mostly) dropdel

* (mostly) abstract

* nobludgeon

* things i missed

* forgot one

* unintended changes

* energy handcuffs
2018-06-01 11:36:31 +02:00
Iamgoofball
19992668fd Eat the ice cream (#38028)
* Eat the ice cream

* Update robot_items.dm

* Update robot_items.dm
2018-05-26 00:23:52 -04:00