Commit Graph

55 Commits

Author SHA1 Message Date
phil235
d2d2d162ba Third time's the charm. 2014-11-13 19:39:37 +01:00
phil235
a73d22f2ed Actually fixes the runtime this time. 2014-11-13 19:22:22 +01:00
phil235
a2f23f2cef Fixes the smoke runtime. 2014-11-13 17:11:06 +01:00
phil235
bc5754b378 adding diagonal attack animation. 2014-11-07 15:42:07 +01:00
phil235
3f30912c51 WIP - Adding attack animation to most attacks.
Fixing a couple "for(......) show_message()".
2014-11-02 22:50:58 +01: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
phil235
45cfe07f98 Merge branch 'master' of https://github.com/tgstation/-tg-station into DisplacedGirderFix
Conflicts:
	code/modules/recycling/disposal.dm
2014-10-15 18:23:40 +02:00
phil235
dbea503e88 Removing the fourth argument (air_group) of CanPass() everywhere, because it isn't used anywhere.
Fixing one instance of "for(mob in viewers) show_message()" to "visible_message()"
2014-10-15 18:03:06 +02:00
Aranclanos
5561e8d9dc Merge pull request #5250 from phil235/SprayPasstableFix
Fix for #5224
2014-10-15 10:48:14 -03:00
phil235
72cc3274df Adding passtable and passgrille to obj/effect/effect and its children so effects aren't blocked by tables and grilles. 2014-10-14 18:34:19 +02:00
phil235
537280b4b9 Removing many instances of the no longer used second argument of message_admins() proc.
Replacing "for(var/mob/M in viewers()) M.show_message()" by "visible_message()" or audible_message()" in many places.
Changing a few span classes.
2014-10-05 01:29:30 +02:00
Firecage
6c7af5eb32 SPANCLASSES!!!!! 2014-08-26 09:52:13 +02:00
Firecage
22743b77f4 Adds asbolute paths to some effect files. 2014-08-07 18:59:06 +02:00
Firecage
7779a2f7e8 Signed-off-by: Firecage <firecage@hotmail.com> 2014-07-20 21:10:53 +02:00
Cheridan
b80e9eda57 Nar-Sie update 2014-06-11 14:19:58 -05:00
VistaPOWA
19402bd258 Handle alpha 0 2014-04-27 15:57:18 +02:00
VistaPOWA
fcf98c15f9 Checking for divide by zero 2014-04-27 14:41:53 +02:00
VistaPOWA
4c7cbeff08 Fixes bad indent 2014-04-27 14:34:52 +02:00
VistaPOWA
14ad291ba2 Merge remote-tracking branch 'upstream/master' into smoke_fade 2014-04-27 14:16:55 +02:00
VistaPOWA
5a197e8dec Adds a fancy fade-out for smokes
Originally from Bay.
Made by Loganbacca, ported by me.
2014-04-27 14:16:50 +02:00
MrPerson
ee716586b9 GEE THANKS GIA FOR MORE CONFLICTS (gravitygen changes to c4 vs qdel)
Merge branch 'master' of https://github.com/tgstation/-tg-station into qdel_r

Conflicts:
	code/game/objects/items/weapons/explosives.dm
2014-03-21 19:04:51 -07:00
Giacomand
cc4dd68bdf Added a new gravity generator which will produce gravity for the station.
Sprites by Ausop, which he posted in his sprite thread.

The gravity generator is very sturdy, as it is almost indestructible, but explosions can break it and it will need repairs.
Changed C4 to stop del()'ing and instead will only use ex_act().
Added an interact_offline variable for machines that will allow you to interact with them even if they are depowered. The gravity generator only uses this at the moment.

Removed the stun that people get when gravity changes.
Shuttles have gravity still.

Added a gravity generator room to the west of Engineering. It is very secure, with a foyer and requiring CE or Captain access. There are instructions on the table for repairing and enabling/disabling the machine.
2014-03-15 16:59:48 +00:00
MrPerson
3c58091437 Merge branch 'master' of https://github.com/tgstation/-tg-station into qdel
Hopefully nothing went wrong but you never know.

Conflicts:
	code/FEA/FEA_fire.dm
	code/controllers/supply_shuttle.dm
	code/game/gamemodes/changeling/changeling_powers.dm
	code/game/machinery/autolathe.dm
	code/game/machinery/drying_rack.dm
	code/modules/hydroponics/hydroponics.dm
	code/modules/projectiles/projectile/magic.dm
	code/modules/reagents/Chemistry-Recipes.dm
	code/modules/reagents/reagent_dispenser.dm
2014-03-02 21:39:27 -08:00
MrPerson
9eee3e5067 First pass at a qdel() garbage collection system for tgstation
Works pretty well. If it can't GC something, it'll just del() it and be done.
Speed is amazing, holy shit.

New procs you should be aware of:
qdel(atom/movable) - sets up an object for garbage collection. Call this rather than del(atom/movable).
atom/movable/Destroy() - called right before the object is GC'd, so it still has a loc. Also called if the object is del()'d.
new controller - garbage.dm has all the details on this. Basically it nulls all references on GC'd objects and force del() them if necessary.
Generally speaking, objects should use Destroy() for behavior prior to deletion rather than Del(). You should also always call the parent so the object gets the right gc_destroyed var set.

ISSUES:
Tries to GC mobs atm. This actually works for new players, not so much for humans/monkies/simple_animals/anything. I'm guessing it needs to clear out their mind and HUD and maybe other things.
Gibbing is really bugged. It works, but the overlays just sit there for awhile and ugh. I'm very tempted just to del() mob/living and mob/camera and call it a day.
qdel() equipment doesn't unequip the item.
Pipes don't generally GC correctly. Debugging suggests they get referenced in many pipenets and that isn't cleared properly. However some do work fine. Need assistance here.
Bots don't GC, probably in the radio controller.
Lots of other shit doesn't GC but it's hard to find them because of the pipe spam.
I think I'm calling Destroy() twice by accident.
2014-02-23 14:55:12 -08:00
Aranclanos
8ca49d5e90 Fixes a small runtime related to deleting smoke that doesn't exist after a spawn() 2014-02-21 08:30:46 -03:00
Aranclanos
e529a1ae84 small fix for an runtime related to ion trails (that smoke coming out from your jetpack when you move) 2014-02-13 18:08:41 -03:00
Giacomand
11bca59614 Refactored the code to remove most icon operations for changing an icon's colour. I had to manually set all the icons, which are subject to colour change, to be have a white/grey icon, so that the colours added properly, and then have them coloured in the code. This means the icons for runes, the reagent beaker overlay, smoke and etc will all be white. They now all use the new 500+ color variable.
The only noticeable gameplay difference is that you can't choose your graffiti's shade.
2014-01-15 21:30:55 +00:00
Cheridan
bb9c09df46 Obsoletes flags = FPRINT | TABLEPASS*
*TABLEPASS was already totally obsolete.
FPRINT was used, but it was on virtually everything anyway.

Removes those flags from every instance where they were used. Also assigned and removed other flags where it made sense.

If it is desired, I can revive the flag as NOFPRINT, which would retain the original functionality, though inverted. That way it would be be used only  where it was intentional (holodeck items could use this for example).
2013-12-30 15:03:17 -06:00
Giacom
5fb0d05dd1 Merge pull request #2096 from Aranclanos/SweetLindaNobodyWillTouchYou
Small fixes for Linda.
2013-12-21 13:57:15 -08:00
Aranclanos
213f3fff31 Some fixes for Linda, now the Move() proc of objects that block air is different. Example below.
object/Move()
   var/turf/T = loc
   ..()
   move_update_air(T)
2013-12-19 22:13:21 -03:00
Perakp
2f70aaadb3 Removes magic numbers and an useless check
- it shouldn’t runtime.
2013-12-18 22:31:07 +02:00
Perakp
b54cab665a No slipping when lying down
- No slipping when lying down
- Doesn’t change slipping mechanics otherwise.
2013-12-18 15:03:03 +02:00
VistaPOWA
1041d7081d Replaces 'aluminum' with 'aluminium'.
Hopefully there won't be a grammar war because of this.
2013-12-07 14:42:25 +01:00
Kyrah Abattoir
109c1065c7 code/game/objects/effects/* lowercase pass
NOTE: created a baseclass for /obj/effect/decal/remains/*
2013-11-20 18:03:41 +01:00
supersayu
799c7ad2ce Replaces atom/HasEntered() with the builtin atom/movable/Crossed()
Crossed() is a byond builtin which is called automatically when two movable atoms overlap (as a side effect of Move(), but not when loc or x/y/z is changed).  Previously, turf/Entered() iterated through all objects in the turf in order to tell them an object had entered; with this change, HasEntered() becomes redundant and can be eliminated.

This may reduce lag when a large number of objects are moving in a small space (singularity, mining conveyors, etc) but should cause no changes to functionality at all.
2013-10-23 16:20:20 -04:00
Giacomand
f5e3037e6d Merge branch 'master' of https://github.com/Giacomand/-tg-station into nobreathe
Conflicts:
	code/game/objects/effects/effect_system.dm - Resolved.
2013-09-28 01:07:20 +01:00
Giacomand
6731722bff Made blob spores a bit more useful! On death they will release a spore cloud which will slightly (0.5 per tick) damage people and cloud your vision until the effect wears off. 2013-09-27 10:24:58 +01:00
Pete Goodfellow
409e47ac05 Ported the Clogged Vents event from Sayustation.
Adds a silent parameter to /datum/effect/effect/system/chem_smoke_spread/set_up(), which disables admin notification.
2013-09-18 16:47:50 +01:00
Aranclanos
0ce01d1583 Adding Linda. 2013-08-10 06:15:14 -03:00
Giacomand
2360cff577 Quick fix to a smoke runtime. 2013-06-25 22:43:36 +01:00
AlexanderUlanH
2fcf26667c Overhauled Projectiles
Changed atom's bullet_act to call the projectile's on_hit, and changed
most bullet_acts to call on_hit as well.  Removed some now-unnecessary
snowflake code.

These changes will make projectiles which should effect non-mobs, such
as the gyrojet and the ion rifle, work properly.  Inanimate objects can
now be empulsed with the ion rifle, whose projectiles used to dissipate
on hitting anything but a mob.  Gyrojets now explode on most objects, as
opposed to just on walls and mobs, and the snowflake code that made them
work on walls is no longer necessary.  The code for pulse rifles'
breaking walls has been moved from a check in turf to a check in pulse
beams, and has been expanded to include structures, allowing them to
(slowly) break girders.  For coders, it means that on_hit is a reliable
proc for the effect of a bullet's hitting an object.
2013-06-19 23:24:00 -04:00
Pete Goodfellow
e4bce0bb14 Replaced most reagent initialisations with the helper proc create_reagents(). 2013-04-15 15:40:33 +01:00
Aranclanos
e62295e98e Made the effects of EMP pulses get garbage collected. Less lag on the singularity (around 20 effect del per 5~10 seconds) 2013-03-13 00:08:20 -03:00
Kortgstation@gmail.com
85f567cae2 Made cult blades/double barrel shotguns fit on exosuit slots again.
Wizard staffs, SAW, combat shotgun still don't

Added the Mjollnir and Singularity Hammer. Just silly melee weapons I coded/sprited for fun. Both are using the Mjollnir's sprites currently though I didn't have it in me to make a billion more inhands for the Singularity Hammer.

Mjollnir shocks the target and hurls them away/spews lightning around.

Singularity Hammer pulls everything nearby in towards the target.

Don't really have plans to balance them or make them obtainable in game but I thought as long as I'd coded them some admin or another may enjoy trading them to antags/giving them to the chaplain etc.

Lowered fireballs cooldown and decreased its explosion size (so wizards can use it without killing themselves by causing hull breaches)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5805 316c924e-a436-60f5-8080-3fe189b3f50e
2013-03-03 01:46:25 +00:00
giacomand@gmail.com
a3b74c9d2b - Multiple runtime fixes.
- Moved some fingerprint procs to detective_work.dm.
 - Removed some unnecessary del() usage in the detective code.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5800 316c924e-a436-60f5-8080-3fe189b3f50e
2013-03-02 01:19:02 +00:00
giacomand@gmail.com
3dabcc8df6 - Fixed the memory leak for effects, which have reagents.
- Fixed a bug with C4 not causing an explosion around a target, which is a mob.
 - Fixed not being able to put para/sleepy pens on your ear.
 - Added a delete proc for reagents (the container) which will garbage collect it.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5772 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-24 14:25:01 +00:00
rockdtben@gmail.com
11c1276566 Push sparks lag to GC this should greatly reduce lags.
Test: 20 emitters shooting for 10 minutes. No lag. Along with other various tests.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5757 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-21 23:49:44 +00:00
petethegoat@gmail.com
58c7f79398 Moved
var/obj/item/weapon/back
var/obj/item/clothing/mask/wear_mask
var/obj/item/weapon/tank/internal

from /mob to /mob/living/carbon.

/mob/proc/abiotic() no longer does any extra checks even if full_body == 1.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5722 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-17 18:53:09 +00:00
petethegoat@gmail.com
15b88d2192 Fixes issue 1160. Pill names in the attack log are the same as the person who administers the pill
Fixes issue 1172. Janicarts disappear in foam
Foam is now TURF_LAYER + 0.1

Fixes issue 1248. Wirecuterrs disappearing (with gift wrap)
Gift wrap is now applied on top of an already wrapped package, to make it pretty.

Standardised sortingmachinery.dm.

Commented out some areas from the the_station_areas list which are no longer present on the station.

Added the energetic flux (revamped blackhole event) and mass hallucination event. Both are pretty mild.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5611 316c924e-a436-60f5-8080-3fe189b3f50e
2013-01-25 20:44:42 +00:00
baloh.matevz@gmail.com
31dfb6ca9e - Replaced MAX_EXPLOSION_RANGE with MAX_EX_DEVASTATION_RANGE _HEAVY_ _LIGHT_ and _FLASH_.
- Moved explosion capping to explosion code, overridable by setting a proc parameter, which defaults to off, obviously.
- Reduced r-walls' explosion resistance from 25 to 15. They can now be destroyed by strong bombs.
- Added liquid processing to the sun part of the MC
- Added additional calls to atmos processing to the MC. You can enable this by (manually, with the debug controller verb) enabling the fast_atmos_1 .. 3 variables in the configuration datum. The intent of this is to enable it in a few rounds to see if it is possible to make atmos calls more common.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5607 316c924e-a436-60f5-8080-3fe189b3f50e
2013-01-24 17:38:20 +00:00