Commit Graph

68 Commits

Author SHA1 Message Date
Juani2400
d4a6ea6949 [MAP] Several major remaps, and additions #3 (#3465)
- Remap: Atmopsherics.
- Remap: Captain's Office.
- Remap: Head of Staff Conference Room.
- Remap: Chief Medical Officer's Office.
- Remap: Medical Briefing Room.
- Remap: Security Processing and Holding Cell.
- Modification: Robotics Laboratory.
- Addition: Desk Ringers in several locations.
- Fix: #3391, #3374, #3345, #3341, #3308, #3306, #3277, #3244, #3173,
#3094.
- Several other minor changes.
- A new subtype of folder has been sprited for the Security folders.
- More colours of flooring decals were added.
- New colours for pipes were added (Lohikar).
2017-09-20 16:42:02 +02:00
Lohikar
fe8d586b31 Ambient Occlusion (#3419)
Adds an implementation of Europa's wall ambient occlusion, extended to operate on openturfs as well.
2017-09-15 09:49:53 -05:00
Lohikar
748846821c Fix Stairs (#3403)
changes:

Stairs now actually work.
Stairs now only move your mob up when you exit the last step.
Walking off the side of a staircase will now cause your mob to faceplant on the ground briefly.
Openturf now handles objects that cover more than one turf properly, such as multi-tile doors.
2017-09-10 22:52:50 +03:00
skull132
16d33365c2 Merge branch 'master' into development
# Conflicts:
#	code/modules/client/preference_setup/loadout/loadout_xeno.dm
#	code/modules/customitems/item_defines.dm
2017-09-09 21:38:02 +03:00
Lohikar
dc85579850 Closet & use_check() tweaks (#3346)
changes:

use_check() will now show failure messages to the affected mob by default. It still returns the failure reason & permits disabling of messages via. the show_messages parameter.
Lockers now take 2 seconds to weld or disassemble.
A progress bar is now shown to mobs with the progress bars pref enabled while attempting to break out of welded lockers.
2017-08-29 23:25:19 +03:00
Alberyk
608cf8feda Adds more sounds (#3327)
Adds sounds for opening lockers, going down ladders, turning on your internals, removing and placing extinguishers in the cabinet, sounds for bone breaking and sound to the bsa.
2017-08-27 16:58:34 -05:00
Alberyk
9c9f63cacc Fix Mecha Z Teleportation (#3334)
Fixes a bug where people could teleport out of exosuits with Z movement verbs.
2017-08-22 23:53:58 -05:00
Lohikar
f3ad54e8aa Assorted tweaks & fixes (#3305)
changes:

Fixed #3203.
Tajara or Unathi CEs now get gloves that actually fit them.
OOs now respect direction changes from their mimicked object.
Replaced all references to trange() with RANGE_TURFS().
Replaced all references to is_type_in_oview() with locate() in oview().
Fixed a runtime caused by recursive explosions falling off the edges of the map.
Carp despawn now works properly with the new asteroid turfs.
Carp despawn now uses WEAKREF instead of SOFTREF.
Added tick-checks to the carp migration event.
Vaurca now have the IS_VAURCA reagent_tag.
Cleaned up butanol alien handling a bit.
2017-08-20 14:10:15 +03:00
Lohikar
fb73735ceb Minor Performance Tweaks (#3265)
changes:

/datum/wires no longer has an (init) proc.
SMES wires now use timers instead of spawn.
Cleanables' random_icon_states list is now lazy. (eliminates ~4000 lists from dirt)
/obj/effect can no longer be pushed around by conveyor belts.
Lighting overlays are now explicitly prevented from being moved by conveyor belts.
2017-08-11 22:57:57 +03:00
Ron
cb5e227320 Converts some istype's to use helpers (#3224)
Converts various istype's to use helpers. Mainly:
Cable
Wrench
Screwdriver
Multitool
Crowbar
Wirecutter

And makes the helpers defines.
2017-08-06 22:08:42 +03:00
Lohikar
2fb9387988 More Openturf fixes (#3198)
Fixes a bug where openturf would unexpectedly delete an overlay if it was updated via. update_above() when it was already queued for update. Also fixes #3191 and includes some minor performance optimizations.
2017-07-31 21:49:51 +03:00
Lohikar
63df52956b Add openturf icon (#3181)
Adds a mapping-time icon for openturf to make mappers' lives a little easier when working with them.

No player visible changes.
2017-07-31 20:23:17 +03:00
Lohikar
ff5cd35ef8 More Openturf Tweaks (#3137)
changes:

Openturfs now darken the lower level less (0.4 lighting multiplier vs. 0.25).
You can now examine human-types and other objects with special examine behavior through Z-levels. (OOs proxy examine())
Fixed a bug where shadower updates caused by LO updates caused visual inconsistencies.
2017-07-23 12:40:44 +03:00
Erki
07cedfb335 Some more fixes (#3130)
Fixes #2173
Fixes #1927
Fixes #3100
Fixes #3087
Fixes #3124
2017-07-23 01:03:41 +03:00
Erki Meinberg
283f63d098 Preferences fixes, ahoy! (#3045)
Fixes #1670
Fixes #1780
Fixes #1781
Fixes #1493
2017-07-21 20:50:59 +03:00
MarinaGryphon
9eb0142bfb Fixes #3054 (#3056)
This was an incredibly easy fix that removed some stupid code I never should have had to fix. >:(
Hoists should be fixed when this is merged (and if this compiles, given my apparent coding skill).
2017-07-16 15:33:42 +03:00
MarinaGryphon
f04baf71ac No more multi-Z grabs, + ladder grabbing (#3025)
Grabs break if the mobs aren't on the same Z level. You also take someone you're grabbing up ladders with you.
2017-07-15 17:03:37 +03:00
Lohikar
41e39f52d1 Wall Icon Refactor (#3023)
changes:

Atom types can now define custom adjacency code for the smoothing system.
Walls now draw using the generic icon smoothing system.
Walls now pre-bake colors into their icons instead of doing it client-side with the color var.
Walls can now use the SSoverlay appearance cache; wall icon updates should be faster.
The "rusty" wall type now actually works.
Smoothing now uses mutable_appearance instead of image in some places.
Should be a bit easier on clients, though I haven't done profiling.

This PR breaks 510 compatibility.
2017-07-15 16:22:21 +03:00
MarinaGryphon
830a4edc66 Catwalk hoisting and other fixes, take two (#3031)
Unanchored catwalks can raise and lower objects on them.
Mechs can be hoisted using catwalks.
forgive me for i have sinned
2017-07-15 16:20:41 +03:00
MarinaGryphon
12ccc4e7a7 Attempting fixes for some hoist bugs. (#3027)
Hoists now release hoistees if they wriggle out somehow. Shouldn't happen anyway, but consistency_check should handle any odd shenanigans.
Silicons should be able to be hoisted. Buckling wasn't anchoring them, for some strange reason.
Fixed a bad message, where [user] was used instead of [usr].
You can't directly unbuckle people from hoist hooks.
2017-07-14 19:55:14 +03:00
MarinaGryphon
ebd50a8e00 Falling In Reverse: Hoists Update (#2573)
Adds hoists! Traverse Z-levels in style!
Use a hoist kit to deploy it on the same tile as you, in the direction you're facing.
Drag an object or mob to the hoist clamp in order to attach them to it.
Left click on a hoist to move up or down, depending on its current direction. This will also pull anything attached to the clamp along with it.
When the clamp is blocked and can't move up or down further, it will automatically switch direction.
To disconnect someone (or something) from a clamp, drag the clamp to the tile you want to put them on. It must be within one tile of both you and whatever is attached to the clamp.
When you're done using a hoist, you can collapse it back into a hoist kit with the Collapse Hoist verb, for easy transportation.
Hoist kits are not available on the map, so they have to be spawned in.
It is preferred to use hoist kits instead of directly spawning a hoist, where possible, when testing.
2017-07-10 21:32:26 +03:00
Lohikar
2ee49b1b9e Fix parallax (#2983)
changes:

Parallax now actually moves properly on Move().
Parallax movement can now be toggled as a preference.
Merged all movable/Move() overrides for performance reasons.
2017-07-09 19:35:02 +03:00
skull132
82cc56dd62 Fix below.above not being nulled. (#2977)
Fixes RT spam. wew.
2017-07-09 01:48:46 +03:00
Lohikar
dbc70d9f49 Openturf & Lighting Improvements (#2961)
changes:

Openturf now uses ~200 MB less memory when sunlight is enabled.
Openturf now handles recursive OO copy better.
Lighting objects now update their existing color list if they can instead of creating a new one each time.
The sun can no longer fall out of the sky.
Openturfs should be a little gentler on clients.
Openturf darkening factor can be more easily changed.
Reset-Openturfs no longer hangs SSgarbage.
2017-07-06 23:40:16 +03:00
Lohikar
2185094d35 Openturf fixes, dynamically lit holodeck, and quick-pickup tweaks (#2943)
changes:

The station's holodeck is now dynamically lit.
Improved quick-pickup's tick checking & converted to assoc lists instead of if (thing in list).
Fixed an edge case where openspace overlays would not properly cleanup on forceMove to a non-turf.
Fixes #2941.
2017-07-06 23:34:55 +03:00
skull132
405366d15f Fixes #2803, #2553, #2597 & #2498 (#2940)
Fixes #2803
Fixes #2553
Fixes #2597 (Couldn't find a cleaner way to make this work, unfortunately. Not all procs-as-verbs can be used as procs.)
Fixes #2498
Fixes #2912
2017-07-04 00:52:42 +03:00
Lohikar
9c010f92d1 isopenturf() macro, update_above improvements (#2931)
changes:

Added a isopenturf() macro, equivalent to istype(thing, /turf/simulated/open).
Converted most/all instances of istype(/turf/simulated/open) to isopenturf().
Made update_above()' aware of queue status & inlined a proc-call.
2017-07-03 12:04:18 +03:00
Lohikar
c8ddab832a Map tweaks (#2923)
changes:

Crusher's ladder now properly has an openturf under it.
Made some aesthetic adjustments to the engine's cooling radiator.
2017-07-03 00:21:27 +03:00
Lohikar
c838fddb22 initialize() -> atmos_init() (#2816)
Renames Atmos machinery's initialize() proc to atmos_init(), to better distinguish it from atom Initialize().
2017-06-26 12:06:57 +03:00
Lohikar
b83a2d908b Fix zpipes not having color (#2812)
changes:

Z-pipes now properly show pipe color.
2017-06-25 14:56:06 +03:00
Ron
1dc0fee3cd Rework of Multi Z vent crawling PR (#2775)
Reworks #2689
Includes: Vent crawling up and down.

Quote from original PR:

Main feature is that ventcrawling between Z levels now works perfectly. It takes 10 seconds to climb up or down a pipe...
2017-06-23 15:55:41 +03:00
Lohikar
05cceb7a1a Queued icon update tweaks (#2787)
changes:

Queued icon updates now update the atom's associated openspace overlay or openturf.
update_oo() renamed to update_above(), and moved up to /atom. Only meaningful on /turf (updates above openturf if present) and /atom/movable (updates associated OO if present).
Demoted SSfalling to a regular subsystem (1ds tickrate).
Increased SSlighting's tickrate from 2 ds to 1 ds.
2017-06-22 13:23:30 +03:00
LordFowl
8cf51e60e0 Buffs Fall Damage (#2758)
Fixes an issue where damage to the chest would never be applied.
Nerfs Weakened.
2017-06-19 00:43:42 +03:00
skull132
324dba97dc Fix some runtimes (#2755) 2017-06-18 13:48:24 +03:00
skull132
36cb778548 Add roofs (#2737)
Implements roofs
2017-06-17 22:18:39 +03:00
LordFowl
08219273d3 Newton's Thirdish Law (#2714)
Items falling now deal a set amount of damage based on velocity calculations, with no more randomisation. This damage is randomly distributed throughout the head and torso by first calculating the damage dealt to the head - anywhere between zero and 1/2th of total damage, and then calculating the damage to the torso - head damage subtracted from total damage.
2017-06-15 12:38:01 +03:00
LordFowl
6f3fa4eba9 Shafted (#2704)
Ladders now have proper open-space shafts. Their sprite has been edited to remove the faux-hole, and also the down sprite is now at the same vertical pixel adjustment as the up sprite, so it looks kinda like they connect.

For security's sake, you can no longer fall down an openspace if there is a ladder on the openspace tile. Strangelly enough there was already code for not falling down if there was a ladder below you.

Added flight to some simple mobs that had been excluded from Alberyk's initial runthrough (parrots, bees, bats, and shades.)

The purpose of this PR is that you can now fly up ladder shafts.
2017-06-13 22:52:42 +03:00
Lohikar
0db557ac29 machinery_process() & auto_use_power efficiency tweaks (#2657)
changes:

Machinery now uses machinery_process() instead of process(), allowing machines to be put into SSprocessing-style lists in addition to the machinery list.
Automatic power calculations now involve less proc-calls.
2017-06-12 19:09:36 +03:00
skull132
1a95ddf774 Emergency ladder sprites + placement (#2658)
Ladders added to emergency storage lockers (random chance), engineering storage (1), and EVA (1).

We'll see if that's too much or not.
2017-06-10 22:40:21 +03:00
VikingPingvin
68415f6cf5 Portable Ladders (#2434)
Add portable ladders as items.
Deploy on floors that have an open space above them, and in open spaces that have floors beneath them.
Fold them, to reuse them.

Need item,structure base and structure body sprites. Probably an in hand sprite too.
2017-06-05 11:19:12 +03:00
skull132
4d7b0f6076 Fixes leg actuators not blocking fall damage (#2546) 2017-05-30 16:26:32 +03:00
Lohikar
0ad3d4c189 Round-end statistics (#2483)
This PR adds a system to display round statistics at the end of the round, with the option of logging said statistics to the feedback database.

Tracked stats:

Most deaths by ckey.
Number of people cloned.
Number of times humans have fallen into openturfs.
Number of times humans have died from falling into openturfs.
Number of times humans have been gibbed.
2017-05-29 22:42:19 +03:00
skull132
36dfee27eb Leg actuators for RIGs (#2421)
Preview: https://kama.skullnet.me/index.php/s/GsEdb7q733nO1LK

Okay. These modules allow you to fall from any height without taking damage. As long as your suit is powered and they're enabled, anyways. Secondly, they allow you to leap! Civilian grade allow you to leap 4 tiles, military grade ones (syndicate + ERT commander) allow you to leap 7 tiles and to also grapple people (Vox leap feature).

On top of that, if you middle click on the tile you're on with them selected, you will try to leap upwards. If the tile you're facing above you is a solid (non-open turf, but not dense either), then you will start to climb onto that tile. Civilian grade model isn't powerful enough to jump you there fully, so you gotta spend 4 seconds grappling for your life. Get interrupted in that time, you fall. Military grade models hop you instantly.
2017-05-29 01:29:35 +03:00
skull132
11edd7e548 Loads-a-fixes for dev (#2515)
Fixes #2488 .
Fixes #2489 .
Fixes the bug of dying upon spawn.
Fixes new player recognition.
2017-05-28 21:23:05 +03:00
LordFowl
cae2fa1fdd New Map Pets and Z collateral (#2503)
Fixes #2499
Fixes #2495
Fixes #2493
Fixes #2480
Fixes #2487
Fixes #2491
Fixes #2492

Gives the head of security Lieutenant Columbo, an attack dog with a special sprite that deals slightly less damage compared to other attack dogs.
Replaces Poly with floor B.O.B.
Gives Lamarr's cage a little more breathing room.
2017-05-28 14:15:22 +03:00
skull132
e8e0954769 Merge branch 'development' of https://github.com/Aurorastation/Aurora.3 into development 2017-05-28 02:48:20 +03:00
skull132
70fde622b4 Fix AI eye falling 2017-05-28 02:48:09 +03:00
LordFowl
766f42ef2d New Map Roof (#2484)
Fixes the command roof
De-randomizes fall damage. Fall damage is now the base variable * z_levels_fallen * species.fallmod + rand(-base variable/2, base variable/2)
Incorporates the first try at reasonable z_velocity. Base variable + 5(z_levels_fallen^2)
Adds toilets to the main level
Adds Poly.
2017-05-28 02:45:25 +03:00
Lohikar
193f89d206 Diagonal smoothing fixes & Shuttle Smoothing Tweaks (#2466)
Ports a refactor of diagonal smoothing underlays from /tg/, fixes a bug where diagonal smoothing did not work on shuttle walls, and updates shuttle walls to use the generic smoothing instead of mapped in icon states.

Fixes issues with shuttle corners not showing the correct underlay.
2017-05-27 12:14:01 +03:00
skull132
755ce490db Rewriting multiz movement to be gooder (#2464)
Intent: implement all of the features from #2442 while also unfucking the multiz movement files to be more readable and not recurse.

To that end, this PR does the following:

All multiz travel is now arbitrated by SSfalling. This will eliminate the need for recursion without relying on timers. Timers would be a bit scary.
The call chain for multiz movement now looks like this (in terms of overwritable procs):
can_fall() (Can lead into fall_impact() & fall_collateral() if returns FALSE)
fall_through() IF current block is open space ELSE fall_impact() & fall_collateral()
Removed almost every istype(src, A) check in the movement.dm file by exercising proper parenting and call chains.
Documented and standardized the contents of multiz/movement.dm. Because this is an API we're going to be relying on very heavily, I'd like to get this right before we move on.
A lot of minor tweaks, like swapping usr over to the applicable mob, and so on.
2017-05-27 02:14:35 +03:00