Commit Graph

32 Commits

Author SHA1 Message Date
Aranclanos
ccae5781c5 added two defines CLICK_CD_RANGE and CLICK_CD_MELEE (4 and 8), replaced all changeNext_move() procs to use these two defines.
Added melee click cooldown for paper spam on cameras.
2014-08-03 22:14:56 -03:00
ikarrus
b1f050e63a Adding fingerprints to actions:
-breaking windoors
-wrenching/unwrenching pipe dispensers
-locking/unlocking crates
-breaking grilles
-smashing windows
-deconning walls
2014-06-04 22:30:46 -06:00
phil235
a5a91eaffc Fixes unwrenching noise 2014-05-24 19:34:06 +02:00
Cheridan
3a0bd3de28 Merge branch 'master' of https://github.com/tgstation/-tg-station into MeteorsSuck
Conflicts:
	code/game/turfs/simulated/walls.dm
2014-05-13 14:03:42 -05:00
phil235
0233cd3a25 Fixes the lack of sound when smashing window 2014-05-01 01:43:09 +02:00
Cheridan
4d8160ab14 meteorhit() is kill 2014-04-22 12:16:02 -05:00
Aranclanos
7bcb69ad88 Removes the click cooldown from almost everything, now it should be always be 0.1 seconds.
Ranged weapons and laser eyes have a cooldown of 0.4.
Grilles, windows, windoors, walls and blobs have a cooldown of 0.8.
Hitting mobs will also have a cooldown of 0.8.
Removes the unused USEDELAY flag.
2014-03-28 06:32:47 -03:00
MrPerson
6b29fecda1 Merge branch 'master' of https://github.com/tgstation/-tg-station into qdel_r
Conflicts:
	code/game/machinery/bots/ed209bot.dm
	code/game/machinery/rechargestation.dm
	code/game/machinery/turrets.dm
	code/game/objects/structures/crates_lockers/closets.dm
	code/modules/research/circuitprinter.dm
2014-03-08 22:03:03 -08:00
MrPerson
80a7a2abb4 Replaced a few more Del() and del() calls
Removed cigarette related reagent deleting. It's already done in atom/Destroy()!
2014-03-03 04:51:09 -08:00
Ergovisavi
ac269baacb Fixes bullet_act not checking for damagetype on many, many objects.
Replaces Holodamage with Stamina damage, if your stamina damage exceeds your current health, you get weaken(5)'d. Stamina heals itself slowly over time.
Makes the hallucination enemies deal more stamina damage than they did holodamage, but stamina damage heals now so it's mostly for just seeming threatening at the moment.
Adds the Disabler, a gun that does stamina damage. It has a range of your screen, but no more. Adds a disabler crate to cargo (security lock)
Fixes Lasertag ED209's because they were busted as shit
Reduces ED209's view range to 9 from 12, which was several times longer than your screen view, now is only a little bit more
Lastertag now does stamina damage instead of an instant stun for that GRITTY LASERTAG EXPERIENCE
2014-03-01 16:39:22 -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
Incoming
03464e1f4d Slime Mob Refactor
Death of the istype invasion from slimes, previously every single color of slime was its own kind of mob, and every single one of those slimes also had an adult form which was a different mob.

There is now only one kind of slime, reliant on new var is_adult and old var colour to determine how it looks. All baby slimes functioned identically outside of icon and core, and all adult slimes functioned identically to each other and to the babys save for a bit higher Health and more capacity to break shit.

A nice side effect is that this solves any inheritence issues of baby slimes growing up since it's still the same mob, though it doesn't solve the same issues for adult slimes splitting.

Also fixed a few annoying but rare bugs (like getting ghosted because you got DC'd and your slime self split and you weren't around to get mind transfered)
2014-01-13 19:38:37 -05:00
Miauw
0338a66c2a Adds fingerprints to a bunch of stuff. De-texts computer build paths. 2013-12-22 18:57:33 +01: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
havocx42
a4e71ce1c0 Removed ..() from Del proc 2013-11-20 09:02:37 +00:00
Laurence Reading
92c0f666f7 When removing a window the Deconstruct sound is played instead of shatter
Adds the ..() call to del()
2013-11-19 13:15:54 +00:00
havocx42
be44497a09 removing unnecessary "/" from variant declaration 2013-11-14 22:54:23 +00:00
Laurence Reading
d753d524c2 Attacking unanchored windows truns them into stacks of glass 2013-11-14 22:17:01 +00:00
supersayu
a993ce62db Bugfixen and minor changes. Fixes #136.
Adjusts the click code to not use client/Click().  The code is largely unchanged, except that it allows the compiler default behaviour of calling atom/Click(), and then forwards the call to mob/ClickOn().  I had some reports that melee combat mixed with movement was behaving oddly, and I believe it may be due to the use of client/Click; the byond documentation says that redefining client/Click() causes additional overhead, and it isn't strictly necessary.

Alters the way double clicks are handled, in an attempt to better handle clickspam, as often occurs during pitched combat.  This may also be responsible for the above, but I don't know.

Inserts proximity (aka flag) checks in all afterattack() procs.  The old assumption was that unless an item used the USEDELAY flag, afterattack() was only called when adjacent, but this is no longer true.  This led to beakers, soap, crayons, etc, all being usable at all ranges.

Removes the NODELAY flag, which was unused.  Removes all existing uses of the USEDELAY flag so that it can be readded to things that need extra delay.

Removes the hand_* procs, previously used by restrained actions.  Instead, the mob helper mob/RestrainedClickOn() has abosrbed basically all the functionality they were used for, which is really only monkeys with jungle fever.

Adds a special case of the Adjacency() proc for doors.  This fixes #136, airlocks being unreachable due to border fire doors.  However, this only takes us back to the unpleasant position where you have to open-hand the door, switch to a crowbar, and pry open the firedoor; it still needs a better fix.
2013-09-17 18:19:14 -04:00
Aranclanos
69c85fa4e9 Makes windows and grilles garbage collect. This will make fires a LOT less laggy. And singularities a bit. 2013-08-23 09:42:50 -03:00
Aranclanos
0ce01d1583 Adding Linda. 2013-08-10 06:15:14 -03:00
Aranclanos
fa5049ca85 Windows have a new proc, can_be_reached(), it will check if there's an object blocking the way on the turf if a mob clicks on the window. It will make some pretty dir checks and then use CanPass(). And before it starts, it checks if it's a full tile window too. 2013-07-04 10:33:52 -03:00
Pete Goodfellow
7ed93cfad1 Fixes #540 cloning welders
Fixes #486 examining jetpacks
Fixes #532 cyborg camera names
Fixes #510 attack windows with rods
Fixes #533 helmet sprites don't update
2013-05-29 00:35:40 +01:00
Kortgstation@gmail.com
b0077b3498 Removed nanoaugs, they were unbalanced and never used outside of badmins shitting things up.
They also added extra checks to

-Everytime a mob attacked (checking for super strength and electric hands)
-Every time a mob was attacked (checking for dermal armour)
-Every time a human was shot (checking for reflex)
-Every time a human breathed (checking for rebreather)
-Every tick of human life (checking for regen)
-Every hud update (checking for radar)

Not to mention just cluttered mob code in general. I know there won't be any noticeable performance increase from this but seeing as they were never going to be finished (I asked Doohl beforehand) and mob code is messy enough as is, I think only good can come of removing the code.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5587 316c924e-a436-60f5-8080-3fe189b3f50e
2013-01-20 10:45:20 +00:00
Kortgstation@gmail.com
0c4f441cb5 Added Cheridan's slime sprites to replace roros. Replaced all mentions of roro/metroid with slime. Once Cheri has the rest of the sprites/Phol gets mutant race sprites I'll start work on redoing metroid/slime code with Giacom and adding breeding.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5223 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-29 04:12:22 +00:00
petethegoat@gmail.com
d9480a1407 New unarmed beartrap sprites by Cheri.
Slightly improved beartrap code while I was there, mostly standardisation and formatting stuff as usual.

Fixed the Chaplain's PDA spawn.

Reduced the chance of stealthy hulk wall smashing. All but one of the messages will attempt to go over the radio now.
Changed hulk resist text colour to red because it was barely readable in green.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5191 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-25 20:57:08 +00:00
petethegoat@gmail.com
dbd759477e Improved window code, mostly formatting and styles, but also general improvements.
I've tested it a fair bit, but there may be bugs, so please report those if you run into them.

Added an ismetroidadult() helper

Improved L6 code.
Made the syndie shuttle console impervious to bullets.
Made mirrors breakable.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5187 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-25 17:09:38 +00:00
petethegoat@gmail.com
242cd37c4b Hulks now only yell when breaking shit. They have a 2/5 chance of yelling over the radio.
Replaced the vault katana with a replica.

(svn actually managed a map merge, if it's broken please just revert to r5064's map, and replace the katana in the vault with a replica)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5065 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-14 19:41:38 +00:00
giacomand@gmail.com
f9501864d7 -Added new x-ray camera sprites. Icons by Krutchen.
-Slightly increased the temperature needed to break windows.
-Re-added a sound for screwdrivering the camera.
-Moved the autonumber camera stuff into the presets file.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4898 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-17 07:57:35 +00:00
giacomand@gmail.com
ddd8e94784 -Walls, firelocks and glass-less airlocks now stop heat.
-Fire made more deadly, as the flames will add more damage and a fire can spread more quickly.
-Fire can break windows now, meaning they can potentially extinguish themselves by opening a window to space.
-Increased the delay for atmos to process a cell and airgroup, will help with the lag for 50 player servers.
-Minor tweaks were made.
--Plasma needing a bit more before displaying its overlay.
--Pressure can now damage you at 550 kPA. This was because it wasn't viable to set the pumps to over-pressurize a room and potentially kill people.
--High pressure warning shows at 325.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4869 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-14 02:02:18 +00:00
johnsonmt88@gmail.com
d91ea514d9 More file structuring.
closet.dm, costume.dm, decal.dm and window.dm have been knocked out of the define folder and their defines have been moved into appropriate files.

The closet folder has been re-organized a little.

supplypacks.dm has been moved into the datums folder since that's what it is.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4627 316c924e-a436-60f5-8080-3fe189b3f50e
2012-09-05 22:44:48 +00:00
johnsonmt88@gmail.com
9e30e7d2ec Moving stuff around part 2!
Committing this early to allow pete to commit something involving the .dme file which would probably conflict otherwise.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4514 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-22 16:32:45 +00:00