Commit Graph

68 Commits

Author SHA1 Message Date
ACCount 40699a8aea [READY]Refactors reagent container types (#33470)
* Replaces a bunch of manual OPENCONTAINER checks with helper procs

* Removes unnecessary vars

* Updates reagent bitflags, adds some new ones

* Replaces most of the is_open_container calls with more specific ones

* Puts new AMOUNT_VISIBLE flag to use

* Uses new helper procs in more objects

* Standardizes chemicals logging

* De-snowflakes two more checks

* Fixes

* Minor fixes and improvements
2017-12-18 22:55:01 -06:00
Emmett Gaines 825ab4def4 [512] The great \ref purge (#31824)
* The great \ref purge

* cleanup
2017-10-28 17:20:04 -04:00
Jordan Brown b6d349e1d4 Remove drop_item, drop_item_v, put_in_hands_or_del (#31386) 2017-10-07 13:36:33 -04: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 59ef81245b Changes some 1s and 0s to TRUE and FALSE (#29144) 2017-07-10 10:31:34 -04:00
Lzimann 5a618297ce Replaces the default output with the to_chat wrapper. 2017-03-10 01:32:05 -03:00
Firecage 50bbf5aa50 Allows syringes and droppers to show their reagents when examined while wearing things such as Science Goggles. (#22618)
* Allows syringes and droppers to show their reagents when examined.

* rearranges my logic

* replaces SEMIOPENCONTAINER with TRANSPARENT

* Silly spelling error fix.

* Moves the defines from flags to container_type to avoid issues with conflicting flags

* changes it back to obj/item/O

* Moves the OPENCONTAINER and TRANSPARENT defines to the reagents.dm
2017-01-04 20:00:46 +13:00
Joan Lung a3be7a9226 Refactors toolspeed to be a multiplier instead of a divisor 2016-12-09 16:55:51 -05:00
Kyle Spier-Swenson dedb16826e Speeds up world init. (93s -> 49s) (#21992)
* Speeds up world init.

* Armor is now new inited for obj and the first level of subpaths.
* Actions is now lazyinited and deleted with empty.
* Actiontypes is now only inited when actually used and deleted once it pre-fills actions with the action buttons.
* Pipes now prefill their node list(s) in new() using new /list/ (count) syntax to speed up the list initaliztions and remove the init proc.
* Pipes no longer store their item version, instead creating it on the fly when deconned
* Walls no longer store their metal stacks, instead creating it on the fly when deconned.
* obj, walls, floor, plating, item, machinery, structure, pipe, pipenet, atom, and movable no longer have an (init) proc. (along with a few other smaller examples)
* Atmos can pass checking is now a var with the ability to have a proc be call in advance cases.
  * (as a side effect, I had to fix a few things that were calling atmosCanPass rather then using the pre-calculated list, this should speed up chemfoam and flame effects greatly)

* Reverts upload limit
(remind me one day to defuck this, it could easily be a config thats not editable by vv to make changes easier)

* Makes apc update icon a bit faster.
APC new is some what high on the profile of world init, still not sure why, but this stood out as a waste of cpu so i fixed it.

* Fixes runtime with atmos backpack water tanks.

* Makes smoothing faster (and fixes turfs smoothing twice at init)

* Makes apcs init faster by replacing some spawns with addtimer

* fix transit turfs.
2016-12-08 21:50:15 +13:00
Cruix ac0bad5d61 Added priority overlay system. (#18225)
Added priority overlays to atoms, which will not be removed when overlays are cut and will always remain on top when new overlays are added. This requires everyone to use add_overlay() and cut_overlays() instead of overlays += and overlays.Cut(). These procs are found in __HELPERS/icons.dm, and the priority overlay list is found in game/atoms.dm. Everything else is replacing deprecated overlay manipulation.
2016-06-17 10:11:53 +12:00
phil235 0caa59b21a First commit of this big PR
These are the files with just tiny tweaks. Mostly modify an object's attackby so it does "return ..()" instead of "..()".
If there are other things in this commit, the PR's description will explain them.
2016-04-24 20:26:24 +02:00
Mike Long 33a9f7cb15 Can put mop in janicart when dry
Fixes #5428
2016-01-07 11:02:06 -05:00
Remie Richards bd22fc8c6d Converted janicarts into a simple to use vehicle framework with customisable speed, converted all existing vehicles to the new framework, added a atv type with a turret on it. 2015-12-26 22:54:15 +00:00
oranges 134a76cc8f Line ending apocalypse 2015-12-17 14:12:37 +13:00
MMMiracles f222dfe36e mostly final changes, wowzers 2015-12-08 21:20:31 -05:00
MMMiracles c384aae4c3 more map edits, loot table balancing, bug fixes, also ATV VROOM VROOM 2015-12-08 00:43:53 -05:00
Firecage c933363062 Adds the toolspeed var and adds it to most usages of tools which has a timer 2015-11-21 19:24:14 +02:00
phil235 a311e7a739 Merge branch 'master' of https://github.com/tgstation/-tg-station into SlimeFeedBuckling
Conflicts:
	code/game/objects/structures/janicart.dm
2015-10-12 22:01:57 +02:00
phil235 7706b8f870 derp, let's not make janicart unbuckling runtime.
Also renaming obj/effect/spacevine/buckle_mob() to entangle_mob() since it's not really the standard buckle_mob() and could cause runtimes.
2015-10-11 14:08:06 +02:00
phil235 9c79257aab Changes the paths of stools, beds and chairs. It is now obj/structure/bed/chair and obj/structure/bed/stool. It makes much more sense since stools barely have any code of their own.
Beds (and chairs) now have buildstacktype and buildstackamount vars to handle how many sheets of what they should drop on deconstruction.
They also have a foldabletype var to handle folding into item (currently only used by roller beds) so that people can add foldable chairs in the future.
Fixes swivel chairs not dropping the correct amount of metal sheets.
2015-10-10 13:35:00 +02:00
AnturK 75e82f15f2 Return for buckling procs
Makes unbuckling priority over removing bag in janicart
Makes doors bumped in janicart open.
2015-10-08 13:40:53 +02:00
c0 9cfb246e4f Removes dirt from walking on tiles 2015-08-24 11:33:52 +03:00
phil235 1cee0d3014 Fixes slipping on water while riding janicart.
The handle_slip() now also handles cases where the mob is buckled. If you are buckled and slip on lube (or something that ignores

galoshes) you get unbuckled and stunned and the buckle object moves one step (no slides unlike when unbuckled).
You can thus slip on lube while buckled to a chair or a roller bed.
Fixes getting hit by abstract held items when slipping.
Fixes janicart rider getting hit twice by bullets.
Removing the STEP constant var in slipping code, it's no more used.
Fixes carbon/slip() not returning the correct value.
Changed var/obj/structure/stool/bed/buckled to var/obj/buckled since buckled can now technically be any obj.

Removes hacky unbuckling/buckling in bed/Move()
2015-08-13 23:49:02 +02:00
phil235 34b9a045fc Fixes non carbon being stunned when thrown and hitting something dense.
Fixes being able to enter a disposal bin while buckled.
Fixes items bouncing off delivery chute when thrown into it despite entering the chute.
Fixes being able to leave disposal pipes when moving inside pipes on a janicart.
Fixes some potential runtime (null loc) when flushing the disposal units.
Fixes the thrown range when being ejected from a disposal pipe.
2015-07-26 20:40:46 +02:00
Firecage 4688c2c969 Fixes proc arguments 2015-07-15 23:52:35 +02:00
Iamgoofball a8ec1c76df Merge branch 'master' of https://github.com/tgstation/-tg-station into graphics
Conflicts:
	code/ATMOSPHERICS/atmospherics.dm
	code/game/machinery/computer/computer.dm
	code/game/objects/items/weapons/explosives.dm
	code/game/objects/structures/crates_lockers/closets/fireaxe.dm
	code/game/objects/structures/musician.dm
	code/game/objects/structures/tables_racks.dm
	code/game/objects/structures/window.dm
2015-06-23 12:54:26 -07:00
xxalpha b2e84a0d3c Put drop_item() calls inside ifs. Replaced some drop_item() with unEquip( 2015-06-14 20:11:40 +01:00
Iamgoofball c2256d41fc BAR NOW SHOWS UP ON THE OBJECT YOU'RE INTERACTING WITH 2015-06-13 13:58:08 -07:00
phil235 24463314f9 Fixes typo in janitorial cart message. 2015-06-06 13:30:20 +02:00
Firecage c0c2c8b097 cleanable #define 2015-05-05 18:51:44 +02:00
Firecage 522e77752f Removes the ability to clean Overlays 2015-05-05 17:36:51 +02:00
kingofkosmos de280c72b5 Removed some more spans from visible messages. 2015-04-24 21:06:59 +03:00
kingofkosmos 1d14471d00 Ellipses to waiting messages. Warning-spanclasses to failing messages with an exclamation mark. 2015-04-24 20:50:50 +03:00
phil235 79a20bd57b slight fix 2015-03-09 19:19:17 +01:00
phil235 71d560bd3a Fixes a runtime with buckling screen alert
Fixes being able to buckle to janicart while crit and when there's a dense object on the janicart's turf.
Fixes alien nest not buckling and being wrongly pixel shifted, and fixed a runtime.
Fixes golems being super easy to weaken by punch and not doing more damage themselves via punch.
Fixes some typos.
2015-03-09 19:09:52 +01:00
Remie Richards 5fc7af7fbf attackby() now has an argument containing the parameters of the click that called it. Items placed on tables now center their icon where the user clicked. this is NOT true for racks, since racks look organised in their sprite.
Items reset their pixel_x and pixel_y values on pickup.
2015-02-19 13:02:43 +00:00
paprka 77dabb02fe fixes janicart 2015-02-01 03:09:09 -08:00
paprka be925ebd62 adds a check for the buffer upgrade 2015-01-24 01:49:07 -08:00
paprka 0f6122ce0e remove copypaste 2015-01-21 16:55:38 -08:00
paprka 045b564cdf Merge branch 'master' of https://github.com/tgstation/-tg-station into readdjanikart
Conflicts:
	code/game/objects/structures/janicart.dm
2015-01-20 20:50:01 -08:00
paprka b5ecc03b07 improves the sprites and code a bit 2015-01-18 00:26:36 -08:00
paprka fac0168ecb improves janicart and adds secway 2015-01-15 01:34:39 -08:00
Remie Richards 17654037db Ports Mloc's Refactor of buckling, All /obj can now buckle things. HE Pipes now change colour based on heat. 2015-01-14 19:07:18 +00:00
hornygranny 7e4688e3f6 Merge pull request #5427 from paprka/littlejanitorthings
Soap, lube, and janitor tweaks
2014-11-03 17:19:37 -08:00
paprka 3b24ac8fa9 removes useless spawn 2014-10-26 14:35:27 -07:00
MrPerson ef6204656f Space movement rewrite to allow everything to drift
Removes a version of atom/movable/Move() that was in mob_movement.dm.
New proc called newtonian_move() that's called as a result of things like shooting a gun or spraying a fire extinguisher and as part of atom/movable/Move().
It pushes src if it's not under gravity and gives the object a chance to stop itself.
As a result, inertial_drift() is kill.
Moved Process_Spacemove() out to atom/movable. It does the same thing, it's called whenever a drift is attempted and stops the drift if it returns 1. Default check is to look for nearby lattices to make dragging shit around the station less annoying. Mobs still call it in Client/Move()
The mob version of Process_Spacemove() will shove non-anchored nearby objects out of the way if you try to move like that. For example if you're free-floating in space next to a closet and try to move right, the closet will drift off to the left.
Mechs call their occupant's version of Process_Spacemove() so mining with a mech isn't retarded. The pussy wagon does the same thing and thus no longer works like a jetpack. Will it be making a comeback?!?! (no)
Any move will attempt to keep dragging your pulled object, not just ones initiated by the client. Should make space wind a little less annoying. Was needed to make drifting not break your drags.
Mechs drift correctly without any special snowflake crap.
Spaceslipping is gone because fuck that shit
Space movement is now slow instead of fast. Having a jetpack helps go faster but even that's slower than current. Hopefully means nuke ops can see each other as they move to the station instead of losing sight of each other instantly. Having your hands full makes spacemovement even slower.
You can drift in office chairs and drag mobs in beds or the bed itself. Currently drifting diagonally while in an office chair is bugged and I need help to solve it. It winds up in cardinal movement instead of a diagonal one.
Changes up the jetpacking effects system to cause fewer errant ion trails but it's still awful code. In hindsight I shouldn't have bothered but here we go.
2014-10-25 23:19:46 -07:00
paprka 7f2feabbd8 soap, lube, and janitor stuff 2014-10-23 01:44:19 -07:00
MrPerson 44383ec1c8 Disregard that I suck cocks 2014-08-21 07:35:51 -07:00
MrPerson 9d9a657acf Change examine() from an atom verb to a mob verb
Just in time for the feature freeze, a big change that will introduce bugs! Yay!
Mob verb is called verb/examinate(target), which just calls target.examine(user) and face_atom(target)
For explanation why, see http://www.byond.com/forum/?post=1326139&page=2#comment8198716
Long story short, mob verbs are much faster than object verbs. The goal is to make right-click menus populate faster.

Also changes a bunch of examine() procs to always, ALWAYS call the parent. Except mobs, but you have 1 guess why I'm not touching them. Mostly this affects obj/item/examine().
And also remove a whole shitload of pointless set src in view(2) kind of crap. Also span classes.
2014-05-01 09:56:39 -07:00