Commit Graph

309 Commits

Author SHA1 Message Date
Leshana
63a1dd0143 - Moved pipe construction defines into __defines/construction.dm
- Unified pipe *unwrenching* by creating a standard proc along with the `construction_type` var.
- Eliminated the pipe fitting name & icon_state lookup tables by adding `pipe_state` var on atmos machinery and referencing that.
    - Each pipe which can be made from a fitting object should override `pipe_state` with the icon state to be used on the pipe fitting object.
- Eliminated the giant switch statement of doom in pipe construction by delegating that work to `on_construction` proc.
    - To make this work, every pipe must implement `get_neighbor_nodes_for_init` which returns a list of nodes which should be re-initialized on that pipe's construction.
- Combined the SCRUBBERS, SUPPLY and REGULAR pipe fitting classes together by storing the `piping_layer` variable and using the `setPipingLayer` procs
- Standardized the code for searching for node neighbors into the `can_be_node` proc.
    - This proc is also improved in that is a mutual check, `check_connectable` is called on BOTH objects, so they have to mutually agree to connect as nodes. Eliminates lots of special edge case logic.
    - Updated all the `amos_init` procs to use `can_be_node`.  In the most common cases, even that boilerplate code is consolidated into the `STANDARD_ATMOS_CHOOSE_NODE` macro.
- Implemented `pipe_flags` which lets pipes declare (or override) certain requirements.
- Adds a "pipe_recipe" datum to help out things that construct pipes.  By taking it out of the dispenser, we open the road for multiple dispenser types.  No, no RPD yet.  Soon.
    - Enhances the pipe dispenser to operate on pipe recipe datums instead of hard coded lists of pipes it can construct.   These datums are also (partially) initialized from the pipe machine types themselves, reducing having to define stuff in multiple places.
    - Switched pipe dispenser UI to use browse().   Not a NanoUI, but makes it a bit prettier with low effort.
    - Changed pipe dispenser to use a button selector to switch between Regular/Scrubbers/Supply instead of having separate list items.
- Added icon states to HE pipes to support the "connected on neither side" state.
2018-03-04 14:49:33 -05:00
Arokha Sieyes
f37e75011b Revert "Reverse floor decal removal commit 00f8ae5"
This reverts commit 517d4a9e56.
2018-03-02 20:04:08 -05:00
Arokha Sieyes
517d4a9e56 Reverse floor decal removal commit 00f8ae5 2018-03-01 09:43:38 -05:00
Leshana
00f8ae5cd8 Convert turfs to use add_overlays(), eliminating the turf_overlay_holder!
- Converted as much as I could find about turf overlays to use add_overlay().
- This should be enough to stop BYOND from crashing, so we can eliminate the turf_overlay_holder hack.
- This also lets us remove the anti-corruption hacks from walls and open space.
- ZAS gas overlays can use priority overlays, so this also fixes the gas-goes-away-when-crowbarring-plating issue.
- Stuff like that
2018-02-25 02:02:57 -05:00
Arokha Sieyes
54ae568b37 POLARIS: zshadows should be as invisible as their origin 2018-02-22 22:36:39 -05:00
Leshana
7ed3d2c2f6 Merge branch 'master' of https://github.com/PolarisSS13/Polaris into polaris-sync-2018-02-16
# Conflicts:
#	code/_onclick/hud/screen_objects.dm
#	code/game/objects/items/weapons/storage/storage.dm
#	code/game/objects/structures/crates_lockers/closets/secure/medical.dm
#	code/modules/admin/admin_verbs.dm
#	code/modules/clothing/clothing.dm
#	code/modules/clothing/gloves/color.dm
#	code/modules/lore_codex/codex.dm
#	code/modules/mob/living/simple_animal/aliens/alien.dm
#	code/modules/mob/living/simple_animal/animals/cat.dm
#	code/modules/mob/living/simple_animal/animals/goose.dm
#	code/modules/mob/living/simple_animal/simple_animal.dm
#	code/modules/mob/mob_defines.dm
#	code/modules/projectiles/projectile/special.dm
#	html/changelogs/.all_changelog.yml
#	maps/southern_cross/southern_cross-1.dmm
#	maps/southern_cross/southern_cross-7.dmm
#	vorestation.dme
2018-02-17 00:35:29 -05:00
Anewbe
d6b249817d Falling onto space no longer hurts (#4774) 2018-02-10 23:25:54 -08:00
Anewbe
64588484bf Mechs can now fall from non-shuttle heights without hurting the occupant (#4776) 2018-02-10 20:03:06 -08:00
Anewbe
f0ce7f9643 Falling one floor is no longer a death sentence (#4759) 2018-02-08 12:59:24 -08:00
Leshana
1d0f5262d8 Merge remote-tracking branch 'upstream-polaris/master' into polaris-sync-2018-02-07
# Conflicts:
#	code/__defines/subsystems.dm
#	code/controllers/master_controller.dm
#	code/controllers/subsystems/atoms.dm
#	code/game/machinery/Sleeper.dm
#	code/game/machinery/doors/airlock.dm
#	code/game/machinery/vr_console.dm
#	code/game/objects/items/devices/communicator/phone.dm
#	code/game/turfs/flooring/flooring_decals.dm
#	code/modules/admin/admin_verbs.dm
#	code/modules/mob/living/carbon/carbon.dm
#	code/modules/multiz/movement.dm
#	code/modules/projectiles/gun.dm
#	code/modules/shuttles/shuttle.dm
#	code/modules/shuttles/shuttles_web.dm
#	icons/obj/doors/doormed.dmi
#	maps/southern_cross/items/headset_sc.dm
#	maps/southern_cross/southern_cross-3.dmm
#	vorestation.dme
2018-02-07 19:30:50 -05:00
Neerti
3fd1571a4b Merge pull request #4724 from Anewbe/ghettoChutes
Fixes ghetto chutes
2018-02-06 14:14:30 -05:00
Leshana
5847319443 Update every initialize() proc to return an initialize hint.
* Yes, all of them.
* Also did a few corrections to redundant New() and broken Destroy() along the way
* Renamed the turf_initializer.initialize() proc to InitializeTurf to avoid confusion.
* Subsumed /area/proc/initialize into /atom/proc/initialize() - Made /area's LateInitialize to get same behavior as before.
2018-02-05 15:50:13 -05:00
Leshana
44dc4b7286 Implement SSatoms
* Moves proc/initialize() from being on /atom/movable, /are and /turf/simulated to being on /atom - Now turfs can initialize too
* Added the SSatoms subsystem which controls initialization of atoms at roundstart and during normal conditions.
* Disabled the old auto_init = 0 behavior, ALL atoms should get initialized() called on them now.
* Refactored the way initialize() is called during /New() to utilize SSatoms instead of SScreation
* Removed SScreation, as it was only a stop-gap until SSatoms could be ported.
* Updated the maploader to inform SSatoms when it is loading maps instead of SScreation.
* Updated the template map loader to use SSatoms to perform initTemplateBounds
* Renamed 'initialized' var in seed_storage to deconflict.
* Removed usage of auto_init = 0, replaced with a no-op initialize() proc for atoms that don't need initialization.
2018-02-05 15:50:06 -05:00
Anewbe
67e22cf0a6 Closets and Mechs no longer prevent death by freefall 2018-02-05 00:53:12 -06:00
Leshana
cef001bf2a Update every initialize() proc to return an initialize hint.
* Yes, all of them.
* Also did a few corrections to redundant New() and broken Destroy() along the way
* Renamed the turf_initializer.initialize() proc to InitializeTurf to avoid confusion.
* Subsumed /area/proc/initialize into /atom/proc/initialize() - Made /area's LateInitialize to get same behavior as before.
2018-02-03 01:00:57 -05:00
Leshana
ef73c090ab Implement SSatoms
* Moves proc/initialize() from being on /atom/movable, /are and /turf/simulated to being on /atom - Now turfs can initialize too
* Added the SSatoms subsystem which controls initialization of atoms at roundstart and during normal conditions.
* Disabled the old auto_init = 0 behavior, ALL atoms should get initialized() called on them now.
* Refactored the way initialize() is called during /New() to utilize SSatoms instead of SScreation
* Removed SScreation, as it was only a stop-gap until SSatoms could be ported.
* Updated the maploader to inform SSatoms when it is loading maps instead of SScreation.
* Updated the template map loader to use SSatoms to perform initTemplateBounds
* Renamed 'initialized' var in seed_storage to deconflict.
* Removed usage of auto_init = 0, replaced with a no-op initialize() proc for atoms that don't need initialization.
2018-02-03 00:59:06 -05:00
Leshana
27c3272821 Merge remote-tracking branch 'upstream-polaris/master' into polaris-sync-2018-01-27
# Conflicts:
#	code/ZAS/_docs.dm
#	code/__defines/mobs.dm
#	code/game/turfs/flooring/flooring_decals.dm
#	code/game/turfs/simulated/walls.dm
#	code/modules/client/preference_setup/loadout/loadout_utility.dm
#	code/modules/lore_codex/codex.dm
#	code/modules/mob/living/life.dm
#	code/modules/mob/living/living_defines.dm
#	maps/southern_cross/southern_cross-1.dmm
#	maps/southern_cross/southern_cross-3.dmm
#	maps/southern_cross/southern_cross-6.dmm
#	maps/southern_cross/southern_cross-7.dmm
#	maps/southern_cross/southern_cross_jobs.dm
#	vorestation.dme
2018-01-27 23:08:53 -05:00
Neerti
d71a610a97 Adds Missing Ceiling Overlay + Fixes Space on Roof
On Multi-Z compatible maps, if a tile is missing a ceiling (IE there is an open space above it), it will display an overlay to show this. This makes it easier to know where the hole in the ceiling is without having to go to the ceiling. Overlay sprite by Mechoid.
Also fixes space tiles appearing when meteors/explosions/other fun things occur on the Southern Cross map instead of open space.
2018-01-22 14:27:19 -05:00
Arokha Sieyes
e3d965c423 POLARIS: zshadow del fix 2018-01-17 02:18:50 -05:00
Arokha Sieyes
bcd71c44c4 POLARIS: zshadow del fix 2018-01-16 23:42:16 -05:00
Leshana
5d5f052eb7 Merge remote-tracking branch 'polaris-upstream/master' commit '613c5984eeeed2757fe7f15877973f81f526323c' into polaris-sync-2018-01-10
# Conflicts:
#	code/game/machinery/atmoalter/area_atmos_computer.dm
2018-01-15 13:27:39 -05:00
Leshana
7cb2555dc7 Updates misc atmospherics machinery init and destroy.
Fixes Destroy() proc on zpipes and cryo cells gets rid of a `loc = X`
Updates remaining atmos machinery to use atmos_init
Fixes area atmos computer to use initialize() instead of spawn-in-New
2018-01-09 15:23:17 -05:00
Leshana
28c193cbdb Merge remote-tracking branch 'refs/remotes/polaris-upstream/master' into polaris-sync-2018-01-04
# Conflicts:
#       code/game/objects/items/devices/communicator/communicator.dm
#       code/modules/client/preference_setup/occupation/occupation.dm
#       code/modules/mob/living/simple_animal/animals/cat.dm
#       code/modules/mob/mob_helpers.dm
#       code/unit_tests/zas_tests.dm
#       maps/southern_cross/southern_cross-1.dmm
#       maps/southern_cross/southern_cross-3.dmm
#       maps/southern_cross/southern_cross-6.dmm
#       vorestation.dme
2018-01-04 22:44:04 -05:00
MarinaGryphon
3f98312535 Ports hoists, as well as some macros, from Aurorastation. (#4451)
* Ports hoists.

* Ports use_check
2018-01-01 12:17:35 -08:00
Arokha Sieyes
4374bef62a Merge pull request #2636 from VOREStation/aro-talkicons
Flips talking icons to the right side
2017-12-27 15:45:33 -05:00
Arokha Sieyes
8a349ee87c Flips talking icons to the right side
So they don't sit under the HUD icons half the time. Kind of annoying. This is how it used to be.
2017-12-27 02:38:52 -05:00
Arokha Sieyes
d998f36c38 Merge branch 'master' of https://github.com/PolarisSS13/Polaris into sync2018
# Conflicts:
#	code/game/objects/structures/signs.dm
#	code/modules/mob/living/carbon/human/human.dm
#	code/modules/mob/living/carbon/human/species/station/station.dm
#	code/modules/mob/living/carbon/human/species/virtual_reality/avatar.dm
#	code/modules/mob/living/carbon/human/update_icons.dm
#	code/modules/organs/organ_icon.dm
#	maps/southern_cross/southern_cross-1.dmm
#	maps/southern_cross/southern_cross-3.dmm
#	maps/southern_cross/southern_cross-6.dmm
#	vorestation.dme
2017-12-26 23:07:58 -05:00
BothNevarBackwards
4540f770d4 Lots of species stuff ported from Baystation (#4442)
* Ports species based footprints from bay
- https://github.com/Baystation12/Baystation12/pull/17935
- https://i.imgur.com/ojAU373.png
- Unathi use claw on right
- Taj and tesh use paw in center

* Flash stuff glasses protection things

* Flash stuff actual thing

* Organ mult thingy

* Floaty eyes and cloak setup

* Species falling
2017-12-26 14:28:21 -05:00
killer653
3a2093ef40 Polaris sync 2017-12-21 04:01:07 -05:00
Anewbe
e51f3aad61 Fixes sprites, moves planetary explosion to fall_impact 2017-12-02 16:36:50 -06:00
Anewbe
132168bc81 Further parachute functionality 2017-12-01 22:11:38 -06:00
Anewbe
085c33e39a Adds parachutes 2017-12-01 18:37:30 -06:00
Cyantime
c2bfa94789 You can no longer fall onto and hit ghosts. 2017-11-28 15:40:48 -05:00
killer653
9ead1295e1 Github didn't push this 2017-11-18 11:10:53 -05:00
killer653
afa7b21dc9 Fixes permastuns. Prevents doubledamage 2017-11-18 10:37:58 -05:00
killer653
3e2cf7c9b7 Makes stairs function as before
Video: https://i.imgur.com/EvqCQux.gifv
2017-11-12 01:15:33 -05:00
killer653
b1ce51c2b3 Adds in Drop Noms
Information to include in PR
Panel: https://i.imgur.com/Ru0Mb2w.png
Pred falling onto prey: https://i.imgur.com/Y28TaJn.gifv
Prey falling onto pred: https://i.imgur.com/DzZlQbr.gifv
Person falling onto person w/ unaligned prefs:
https://i.imgur.com/DzZlQbr.gifv
Pred falling onto prey does anywhere from 0 to 30 damage to the pred
Prey falling into pred does 0 damage to both.
Unaligned causes the faller to suffer damage & a stun, person being
fallen on gets stunned
Dropping onto someone w/ dropnom: https://i.imgur.com/PywIfAI.png
Dropping onto someone w/ dropnom: https://i.imgur.com/H7o5g9f.png
2017-11-12 00:32:54 -05:00
Cameron Lennox
4f289c84c6 Agh 2017-11-11 19:24:59 -05:00
Cameron Lennox
c9ee48b78f WIP 2017-11-11 19:24:35 -05:00
killer653
42c8d39def Fixes issues 2017-11-03 18:23:20 -04:00
killer653
f81499a052 whoops 2017-11-01 17:54:43 -04:00
killer653
529b55798e Stops runtimes 2017-11-01 17:46:35 -04:00
killer653
cd423e7d07 Flying check 2017-10-31 19:20:41 -04:00
killer653
954d254f11 Makes the var on /mob, making it easier to porrt. 2017-10-31 19:08:45 -04:00
killer653
e6c573ba8e Quick fix 2017-10-31 17:27:32 -04:00
killer653
02e25ebe3d I hate this keyboarrd 2017-10-30 18:19:00 -04:00
killer653
cfb3b84087 Adds flight limit 2017-10-30 18:16:15 -04:00
killer653
fc5f6c084b Adds a limit to flying. 2017-10-30 18:12:17 -04:00
Cameron Lennox
c99e7b51da Changes the knockout checks to incap all.
Also stops micro interactions while flying.
2017-10-29 11:30:43 -04:00
killer653
28e75a89aa Makes incap checks more extensive. 2017-10-28 21:28:56 -04:00