Commit Graph

69 Commits

Author SHA1 Message Date
Swag McYolosteinen
cd60db5e18 Merge pull request #5124 from MrPerson/implant_action_button
Give implants an action button
2014-10-11 18:15:44 +02:00
MrPerson
1995ac638b Allow activating implants even when stunned and such
Make ninja implants show up right
Add a changelog for the action_button stuff
2014-10-07 01:04:10 -07:00
MrPerson
dea5cc4bcb Give implants an action button
Because spells for this is dumb

Featuring activation buttons that totally are 100% coderart.
2014-10-06 21:05:09 -07: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
Miauw
899d967953 Doubles the amount of TC and the prices of uplink items.
Stealthy items have been slightly decreased in price.
Weapons have been slightly increased in price.
Nuke items remain mostly unchanged.
2014-09-21 15:56:24 +02:00
Firecage
6c7af5eb32 SPANCLASSES!!!!! 2014-08-26 09:52:13 +02:00
Firecage
f5c3d0b9cf Fix for 1 use freedom implant 2014-08-21 16:11:26 +02:00
Firecage
24b18fad93 Absolute paths for item files. 2014-08-07 23:02:43 +02:00
ikarrus
c7fc7f4811 Monkeys can be loyalty implanted
Monkeys can still be revs, so they should be able to be loyalty implanted. This would also fall in line with the other implants, which have no race restriction.

Fixes #637
2014-05-16 22:17:06 -06: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
ChuckTheSheep
f4e2d30749 Made uplink_owner key rather than name
Had issues with clowns/mimes/nuke ops due to name changes.
2014-03-04 14:55:03 -05: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
ChuckTheSheep
21d621c049 Merge remote-tracking branch 'upstream/master' into TC-Green-Text 2014-02-25 20:19:32 -05:00
ChuckTheSheep
6ecb511a24 TC use count appears on round end 2014-02-23 23:43:45 -05: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
Cheridan
8b31314cb7 Merge pull request #2806 from Incoming5643/implantsmorelikeshitplants
Improves the "freedom" syndicate bundle
2014-02-22 23:33:49 -06:00
Incoming
8d1f579de1 Renames the "freedom" bundle the "implant" bundle cause that's what it is, man.
The freedom implant is now shrugs only, and the emp implant can now not be shrugs.
The freedom implant now has an assured 4 uses instead of rand 1 to 5 because... why?
Adds an explosive implant to the bundle, and labels it since there's a good chance the traitor would rather use it on someone else instead of themselves.
No F U C K S given.
2014-02-16 15:22:54 -05:00
Hornygranny
9d3f8f6a2d second pass 2014-02-15 20:11:12 -08:00
Razharas
93f0817010 Merge branch 'master' of https://github.com/tgstation/-tg-station into SayYiffYiffIfYouAreMachineFucker 2014-01-14 03:36:51 +04:00
dumpdavidson
cf672d2c29 Balance changes to the EMP kit:
- EMP-Flashlight now has one charge less but recharges (slower than lasers/energy crossbows do)
- EMP-Flashlight description no longer reveals the nature of the device
- EMP implant now has two uses
- EMP kit now contains two grenades
- EMP and adrenaline implants now inform the user how many charges they contain to begin with (freedom doesn't because it's intentionally random)

- Fixes EMP flashlight sometimes going down to -1 charges.
2014-01-11 21:04:35 +01:00
Razharas
551a7ab0a3 Issues fixing
Added biogenerator and freezer/heater
Fixed issues gia pointed out
Added some lost sprites
2014-01-11 00:56:28 +04:00
Cheridan
b9efeaa932 Merge pull request #2014 from kyrahabattoir/ItemNameFixingRound3
Item name fixing round3
2013-12-26 23:14:15 -08:00
Razharas
358a85eb3d Completed the transition to a new proc
All the logging i have found in the code was changed to use the
proc(maybe i missed something)
Killed all runtimes found so far
Proc now handles all the checks, no need to add checks in the body of
object
2013-12-17 22:56:04 +04:00
Kyrah Abattoir
d9fc4bdd5c code/game/object/items/weapons/* lowercase pass
code/game/object/structure/* lowercase pass (start)
2013-11-24 08:49:34 +01:00
Aranclanos
0ec59be055 Adrenalin implants will now actually add their reagents instead of runtime and cry. 2013-11-22 01:47:18 -03:00
Cheridan
729dea43a2 Fixes up the implant removal messages, replaces names with paths in uplink_item.dm 2013-11-04 09:58:04 -06:00
Cheridan
637e7f72c9 Nuke Op Population Scaling and Content Update
to be edited
2013-11-03 16:41:57 -06:00
Mloc-Argent
79495f710a Refactors the code to work with BYOND 500. Big commit.
Var changes:
* /obj/item/var/color is now item_color
* /obj/machinery/portable_atmospherics/canister/var/color is now canister_color
* /obj/machinery/atmospherics/var/color is now pipe_color
* /mob/living/simple_animal/mouse/var/color is now body_color
* /mob/living/simple_animal/chicken/var/color is now body_color

Proc changes:
* /obj/machinery/door/proc/animate() is now do_animate()
* /obj/machinery/transformer/proc/transform() is now do_transform()

Map changes are due to pipe instances being changed from color to pipe_color

Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2013-10-06 19:47:30 +01:00
dumpdavidson
5b6c126a1a Adds EMP implant.
Replaced the EMP grenades from the uplink with an EMP kit.
The kit contains a grenade, an implant and a flashlight with 5 uses that can EMP any object or mob in melee range.
2013-08-21 21:48:37 +02:00
Aranclanos
90b894fe66 Made all the machinery use ..() on the Topic(), instead of having a copy pasta everywhere to see if the human is dead or others. This will stop dead AIs interacting with machineries or others. 2013-07-03 13:16:53 -03:00
dumpdavidson
4e6d84d8a7 Prevents implant from dropping to the floor when drop_from_inventory is called. Resolves an issue where implants might have dropped to the floor during transformation when using adminverbs.
Signed-off-by: dumpdavidson <gtb.schmidt@gmail.com>
2013-05-24 16:00:29 +02:00
Pete Goodfellow
e4bce0bb14 Replaced most reagent initialisations with the helper proc create_reagents(). 2013-04-15 15:40:33 +01:00
aranclanos@hotmail.com
3a2673a284 Changes for all the different update icons procs of humans and monkeys, they now update their own sprite and hud icon (if it's a proc of a slot item) without having to call for update_icons().
A lot of different calls for update_inv_[slot] now won't call for update_icons.dm(). Such as dropping, throwing, picking up objects, moving objects around your gear, using your active hand, firing guns, stripping, etc.
All the different calls for UpdateDamageIcon() now they won't call for update_icons()
The different sprites of humans/monkeys will now have their own layer, humans starting with MUTANTRACE_LAYER in layer -1 to R_HAND_LAYER in layer -20, so the sprites don't get messy overlapping eachother if update_icons() is not called. To help this change, all layers numbers were changed, R_HAND_LAYER used to be 1, now it's 20. (This can be changed back if it ends up being confusing or ugly to read)

TL;RL I removed 90% of the calls for update_icons() modifying the different update procs of update_icons.dm of monkeys/humans. The goal is to reduce lag.

JUST IN CASE, lying down will call for update_icons(), so players have an easy way to update their icons if something goes horribly wrong. Which won't. I hope.


Fixes issue 842. Handcuffs sprites appearing on the player's UI if this one was handcuffed. Because I liked this we'll call it feature and add some awesome sprites made by Cheridan, you'll now have a new sprite on your UI telling you "you're handcuffed buddy!". (Also he named the sprites so don't blame me)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5809 316c924e-a436-60f5-8080-3fe189b3f50e
2013-03-04 05:01:07 +00:00
petethegoat@gmail.com
3acc1f7899 Standardised a lot of implant code.
Added logging for tracking implant messages. (hurr sekrit erp)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5699 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-13 16:44:54 +00: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
giacomand@gmail.com
35fbc6b1c7 - Implant pads will no longer be stuck inside your pocket. Fixes Issue 1058.
- The free objective for cultists will be an automatic success.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5573 316c924e-a436-60f5-8080-3fe189b3f50e
2013-01-18 10:51:41 +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
johnsonmt88@gmail.com
4ddf9100f5 Sending a message should no longer work if you are incapacitated. Fixes issue 1120.
Moved some mob vars to carbon:
mob/var/handcuffed -> mob/living/carbon/var/handcuffed
mob/var/legcuffed -> mob/living/carbon/var/legcuffed

As a result, I've turned some procs into pure virtual procs and moved their code into carbon.dm.

mob/proc/restrained() -> mob/living/carbon/restrained()
mob/proc/can_use_hands() -> mob/living/carbon/can_use_hands()

The hand and legcuff portion of mob/proc/u_equip() was moved into mob/living/carbon/u_equip().

The handcuffed portion of mob/proc/show_inv() was moved into mob/living/carbon/show_inv().

Fixes issue 1114.

Made parrots immune to bear traps since parrots should be flying over them anyway.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5184 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-25 00:28:47 +00:00
giacomand@gmail.com
78887723ca -New corridor airlocks! They will replace the regular glass airlocks in the corridor but they have an extra feature. They stay open by default and close/open automatically based on the local area's air alarm alert.
-Got rid of a magic number in implants.
-Robots cannot hide their items in food anymore.
-Updated changelog with disease naming.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5077 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-15 16:40:54 +00:00
giacomand@gmail.com
9afc2cbe7f -Chemical implants can now hold 50 units instead of 10.
-Made mutagen a catalyst instead of an ingredient. Fixes Issue 1100.
-Spellbook and Teleport Scroll doesn't show up for other players now.
-Added a syndicate intercom in the wizard's den.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5072 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-15 08:03:05 +00:00
giacomand@gmail.com
6a2d78bc94 -Killed the updateDialog lag. I added a check to see if there were any mobs to update, if not it will stop checking until a user uses the machine again. I had to replace all the machine = src and machine = null with procs to help make it manageable. I believe this is one of the culprits causing the server to lag as the round goes on, as more players will interact with machines.
-Atmos delay is now based on active players, to help fight lag for massive player rounds.

-Changed some for(blah in world) loops to use the correct lists.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4958 316c924e-a436-60f5-8080-3fe189b3f50e
2012-10-25 19:15:51 +00:00
johnsonmt88@gmail.com
1a8fb7c09e Another small chunk of reorganizing objects.
I've cleared out most of the .dm files in code/game/objects/ and put it into appropriate files/folders. The stuff I've left is stuff I believe may conflict with carn's work and some code for stuff that does not have a home yet.

TODO:
- Files that were left in code/game/objects that may conflict with carns work
- Go through all the files in all the subfolders of code/game/objects.
- Move all the defines from /defines/ to their proper spots

Not much right?

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4520 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-22 21:55:46 +00:00
giacomand@gmail.com
be76c3afcc Fixed issue 645.
I changed how uplinks worked. Instead of there being a duplicate item which would switch out when it activates, there's an item called "obj/item/device/uplink/hidden". It is a hidden uplink which you can place in any obj/item. In "hidden" is where it will generate menus, check for triggers to show the menu and etc.. No need to switch out with duplicate items or add the menu onto the PDA's notes.

How to create a new uplink item in 3 easy steps!

1. All obj/item 's have a hidden_uplink var. By default it's null. Give the item one with "new(src)", it must be in it's contents. Feel free to add/remove "uses".

2. Code in the triggers. Use check_trigger for this, I recommend closing the item's menu with "usr << browse(null, "window=windowname") if it returns true. The var/value is the value that will be compared with the var/target. If they are equal it will activate the menu.

3. If you want the menu to stay until the users locks his uplink, add an active_uplink_check(mob/user as mob) in your interact/attack_hand proc. Then check if it's true, if true return. This will stop the normal menu appearing and will instead show the uplink menu.

I've given the recharge station's verbs a category so they don't create their own tab.
I've added a mob/proc called put_in_any_hand_if_possible. Name speaks for itself. Returns true if successful, false otherwise.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4450 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-16 21:57:27 +00:00
rockdtben@gmail.com
bf9f922390 -Fixes issue 690
-Made my comment less ambiguous

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4391 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-13 13:21:02 +00:00
rockdtben@gmail.com
bfd80f5854 -Tidied up some of the nanoaug code
-Modified the implanted method signature to be more readable
-Tested changes with Ausops

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4390 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-13 11:08:25 +00:00
rockdtben@gmail.com
7f0e81c5bc Fixed issue 625
-Revheads cannot exploit loyalty implants anymore.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4381 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-12 16:09:08 +00:00
baloh.matevz
af99faf4a3 - Made legcuffs a thing. At the moment the only legcuff type is the beartrap, but it needs sprites before it can get added to the map. The bear-trap triggers when you arm it and then someone runs over it. It attaches to their leg, making them unable to run until they remove it. You remove a legcuff by resisting out of it or by getting someone else to do it for you in the same way that handcuffs are removed. Resisting out of a beartrap takes
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4164 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-24 07:09:57 +00:00
baloh.matevz
e3d3f2b8e9 - Added support for pulledby, which tells you who is pulling this object.
- Replaced all the .pulling = object instances with start_pulling() and stop_pulling(). Use these from now on.
- Ian and Runtime will now no longer move when being pulled

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4155 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-23 07:45:27 +00:00
sieve32@gmail.com
459c558898 -Make holodeck eswords a child of obj/item/weapon/holo instead of regular eswords, clumsy check removed as a result, and you can no longer do things like cutting through walls or doors or what have you. (Fixes Issue 665)
-Redid icons to be more optimized at compile by setting icon = 'icons/folder/icon.dmi' instead of just icon = 'icon.dmi', meaning that Dream Maker doesn't have to search through every single file for every single .dmi. This shouldn't lead to any errors because of how I went about it, plus the fact that Dream Maker would have freaked out if I screwed something up. Also moved around 2 icons that weren't sorted well.

r4146 compile time: 1 minute, 40 seconds
r4147 compile time: 45 seconds

[VGTG]

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4147 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-23 00:48:51 +00:00
elly1989@rocketmail.com
60c7b28274 Resolves issue 499. Blood runes are now totally invisible to AIs.
Created defines for disabilities and sdisabilities bitflags. Thos areas of code really need attention. Why are there so many blind variables/flags D= disability bitflags are located in setup.dm

Handcuff overlays now update when beepsky/ed-209s cuff you.

Resolves issue 628. Took a stab at tidying up handle_regular_hud_updates() for humans. If it's all working perfectly as it appears to be I'll start doing the same for other mobs. Whomever started 'fixing' this and then just abandoned it with redundant and heavily-broken code should be ashamed :[ It was/is in a real sorry state.

Resolves issue 617. Shades can no longer be weakened (stunbatons etc).

Fixed an issue with one of the antag deaf-sting/rune/whatever-it-was-I-forget causing nearsightedness rather than deafness :P


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3985 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-05 07:44:18 +00:00