Commit Graph

2511 Commits

Author SHA1 Message Date
sieve32@gmail.com
7bf6788082 -OPTIMIZATION TIME
-Almost every instance of 'for(mob in world)' has been killed. Because GODDAMN was it being run a bunch. Instead, a series of global lists have been made, and they are all handled auto-magically through New()'s, Del()'s, Login()'s, death()'s, etc...

Lists are as follows:
-mob_list : Contains all atom/mobs by ref
-player_list : Like mob_list, but only contains mobs with clients attached
-admin_list : Like player_list, but holds all mobs with clients attached and admin status
-living_mob_list : Contains all mobs that ARE alive, regardless of client status
-dead_mob_list : Contains all mobs that are dead, which comes down to corpses and ghosts
-cable_list : A list containing every obj/structure/cable in existence
Note: There is an object (/obj/item/debuglist) that you can use to check the contents of each of the lists except for cables (Since getting a message saying "a cable," x9001 isn't very helpful)

These lists have been tested as much as I could on my own, and have been mostly implemented. There are still places where they could be used, but for now it's important that the core is working. If this all checks out I would really like to implement it into the MC as well, simply so it doesn't check call Life() on every mob by checking for all the ones in world every damn tick.

Just testing locally I was able to notice improvements with certain aspects, like admin verbs being MUCH more responsive (They checked for every mob in the world every time they were clicked), many sources of needless lag were cut out (Like Adminwho and Who checking every single mob when clicked), and due to the cable_list powernet rebuilding is MUCH more efficient, because instead of checking for every cable in the world every time a powernet was broken (read: A cable was deleted), it runs though the pre-made list, and even with a singulo tearing all the way across the station, the powernet load was VERY small compared to pretty much everything else.

If you want to know how any of this works, check global_lists.dm, there I have it rigorously commented, and it should provide an understanding of what's going on.

Mob related in worlds before this commit: 1262
After: 4
I'm helping


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4179 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-26 03:04:05 +00:00
baloh.matevz
1808b82cd4 - You can now wash people's mouths out with soap by having soap in your hand and targeting their mouth.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4166 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-25 00:16:43 +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
giacomand@gmail.com
4f5f726edb -You can make newlines with PDA notes.
-Fixed a bug where if an Alien manages to pickup an item that they shouldn't and put it in their pocket then it won't be stuck remain stuck, being unable to pickup the item you placed in your pocket. It will now instead just drop it if it detects the item in your contents.
-APC will auto-turn on equipment if there is enough power for a certain duration. I want to tweak this some more until I get the perfect balance.
-Updated the changelog

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4141 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-22 15:45:42 +00:00
giacomand@gmail.com
5bd1f78eb1 Fixed issue 663, you should no longer be able to mass inject monkeys.
Fixed DNA injector sprites so they don't remain in your hand after injecting someone.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4135 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-21 20:06:29 +00:00
Cael_Aislinn
4f3374cdaf compile fix
Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-07-21 20:54:31 +10:00
Cael_Aislinn
779ca913f4 death alarm implants no longer announce deaths on syndicate shuttles
Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2012-07-21 20:51:11 +10:00
elly1989@rocketmail.com
f6ded04899 Minor optimisations for explosions (again). Only removed some unnecessary lists, nothing major. Added some logging to world.log which gives explosion location/duration etc so we actually have something to compare it to whenever that damn code gets changed again :P
Added a shortcut to player notes into the investigate verb. Just type investigate notes

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4132 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-21 02:20:16 +00:00
giacomand@gmail.com
285f31f0c4 -You can now store donuts in the donut box. The next donut you pull out will be the last one you put in.
-Changed the class type of donuts. donut/normal is now the regular donut. All other donuts have been made this way. (I.E: donut/chaos)
-Hopefully the merged records proc will now not spit out runtimes.
-You cannot enter a name without any character now. This way you can also click on the link.
-Added some coloured caps to their respected coloured wardrobes.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4123 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-20 00:12:50 +00:00
elly1989@rocketmail.com
d80b933510 Stat() == 2 was being used instead of stat == DEAD (one being a proc another being a variable to track death.
Also deceased was spelled incorrectly.

*facepalms*

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4119 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-19 18:50:55 +00:00
johnsonmt88@gmail.com
1ce01f34b9 Rounded off the shuttle time message.
"The Emergency Shuttle has left the station. Estimate 2.98662 minutes until the shuttle docks at Central Command." should no longer happen.

Removed some while(1) loops from object process()s.

Removed some unused object process()s.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4116 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-19 18:06:23 +00:00
giacomand@gmail.com
d4c0a8130f -Fixed there being no return link when a "No SQL server" message appears on the Library Computer.
-Increased the amount of lights you get from adding glass to the Light Replacer.
-Emagging the light replacer is one way.
-You can add lights to the light replacer to add uses.
-You can unload the trash bag by clicking on it.
-Vodka now heals toxin damage.
-Made light tubes the same price as light bulbs.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4114 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-19 17:03:36 +00:00
johnsonmt88@gmail.com
8063f6dd06 Bugfixes:
Projectiles now last 50 ticks then dissipate. 
- This is to prevent people from firing these into space causing large amounts of projectiles to be processed needlessly.

Re-coded the cremator's cremate(), it should not lock up any more.

Removed a duplicate attackby() in pill bottles. They should now be able to pick up all pills on a tile properly.
- Fixes Issue 490
- Thanks to Zelacks for pointing this out.

Handcuffed mobs who are being dragged by another player can now move when the puller is stunned or paralysed.

Ashes are now decal/cleanable and can be mopped up by janitors

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4103 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-18 04:53:18 +00:00
giacomand@gmail.com
e42419c304 -When a pAI Card is deleted it will now kill the pAI mob inside. This is to stop people from being able to respawn by having their pAI destroyed in a singularity.
-Added a new wire to Cyborgs. The Camera wire allows you to disable the Cyborg's camera. It will show on Security Consoles as "Cyborg-155 (deactivated)". Pulsing it provides you and the Cyborg with a message of the Cyborg's camera focusing loudly. It will also kick anyone who is watching the Cyborg's camera out.

-Traitor Cyborgs, when scrambling their codes, now have a completely disabled camera. It will not show up on Security Consoles at all, even as deactivated.

-Added a new small guide for new Cyborgs. It is similar to the AI's with some more useful information specific to Cyborgs.

-Commented out the old message, it was copy+pasted everywhere.

-Changed RandomBorgWires to not rely on lucking out and landing on a previously unused index.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4089 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-16 16:15:29 +00:00
johnsonmt88@gmail.com
6008c2704e Runtime Condenser!
It condenses hundreds of identical runtimes into one, providing a much more user-friendly list to work off of. It may be poorly coded but it is fully functional. Just copy/paste runtimes into input.txt, run the exe and the condensed runtimes will be in output.txt. 

Bugfix:
Fixed a very-poorly coded proc that could cause infinite loops.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4081 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-16 00:58:45 +00:00
johnsonmt88@gmail.com
54bbcff613 Bugfixes!
Tripled the chance for random events to happen.
- Old: 1% every 5 minutes.
- New: 3% every 5 minutes.

Door bolt clicks are now only heard by people near the door. Fixes Issue 563.

Fixed being able to bypass a windoor construction step.

Chaplains are no longer forced into christianity and can choose their own religion. Fixes Issue 658

Plant-B-Gone:
- It now lists the regents inside when examined. Fixes Issue 656.
- Fixed a typo in the description.

Antagonists are now logged at round end.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4080 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-15 23:31:21 +00:00
Albert Iordache
8b976b3279 Debug message 2012-07-15 12:29:02 +03:00
ericgfwong@hotmail.com
1212efe4f1 Changed DNA injector logging so it doesn't spam admins unless it's a monkey SE.
It also shows up in the attack log now.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4071 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-14 17:55:16 +00:00
johnsonmt88@gmail.com
8432f2aabe Resisting out of lockers
- Being inside a wrapped locker no longer delete you when you resist out of it. Fixes Issue 596
- Resisting out of a locker now takes longer then 5 seconds

Certain spells can no longer be cast on z2
- 'walk through wall' spells are disabled to prevent people from getting to centcomm
- 'construct turf' spells are disabled because turfs in transit space crash the server

get_contents()
- Now recursively runs through a mobs contents for items and should actually find everything.
- Now take package wrapped items into account.

check_for_contents() now simply calls get_contents() to generate a list instead of using copy/pasted code from get_contents().

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4064 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-14 01:00:22 +00:00
Albert Iordache
b94b57e04c Partially fixed the double definition of BROKEN, renamed organ definitions 2012-07-13 23:42:05 +03:00
petethegoat@gmail.com
47710d7f24 Fixed a logging issue with stunbatons.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4052 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-12 18:11:18 +00:00
ericgfwong@hotmail.com
d2fc8b2689 Updated message AIs and Cyborgs get when they spawn
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4027 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-10 19:02:03 +00:00
johnsonmt88@gmail.com
8231234a64 Pile of bugfixes
Nodrak:
- Bags of Holding can no longer be brought to the clown planet
- Made a quick new sprite for broken telescreens
- Removed the clusterbang from the HoS safe. It is currently bugged and not in presentable condition, however, someone is working on it. 
- Added a machine check to shift+click. Partial fixes issue 534 (see Zek's stuff for more.) I'm not really sure of a better way to fix this that wouldn't involve a whole pile of coding...
- Cigarettes now evenly distribute chemicals injected into a pack of cigarettes. Partial fix for issue 548 (see Zek's stuff for more.)

Commit for Zekkeit/39kk9t
- The gibber now provides attack logs of who the mob gibbed, or who the mob was gibbed by. How can you tell who a mob was gibbed by when the mob gets destroyed? Well read the next enhancement!
- Attack logs now transfer to the ghost of the mob who dies
- You can no longer survive cold by cooling yourself down before jumping into space. Fixes issue 206.
- Ghost() is now a client proc, not a mob proc. Fixes issue 442
- Fix for issue 493.
- Added a range check to shift+click. Fixes issue 534.
- Cigarette packs are now limited to (15*number of cigarettes) units of reagents. Fixes Issue 548.
- Added organ inaccuracy to guns. This means, for example, that you wont hit the mob's chest with 100% accuracy. You may end up hitting the mob's arm, or head instead. Accuracy is directly related to distance.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4022 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-10 06:10:22 +00:00
cib
674042aa35 Cauterizing amputated limbs should now stop the pain. 2012-07-07 13:00:29 +02:00
cib
bce2e2a66a Removed redundant wire object. 2012-07-07 11:17:11 +02:00
CIB
f6fe1f252e Fixed some issue with cyborg limb repair wires. 2012-07-07 11:58:52 +03:00
unknown
050b697486 Ugh, grammar 2012-07-06 15:37:05 +03:00
unknown
3d839120a4 and some more 2012-07-05 23:06:03 +03:00
unknown
46dcfb2d3d Fixes wounds not bleeding and makes gauze stop bleeding
Fixes issue #1408
2012-07-05 20:48:08 +03:00
unknown
507dc7cc84 Fixed surgery bleeding bug
Clampers did not clamp properly
2012-07-05 17:32:45 +03:00
unknown
7a8f5ec38e Makes ointment give different message from gauze when applied.
No more 'bandaging with ointment' (Issue #1430)
2012-07-05 15:08:12 +03: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
Erthilo
8acd06ddda Merge branch 'master' of github.com:Baystation12/Baystation12 into TGUpdates
Conflicts:
	icons/mob/items_lefthand.dmi
	icons/mob/items_righthand.dmi
2012-07-04 09:00:59 +01:00
johnsonmt88@gmail.com
bb901f7583 Mob define cleanup: Part 2
Moved the simple_animal folder into /mob/living.
- Thanks to tortoiseSVN issues, I will have to remove the old simple_animal folder in a second commit.

Moved to living:
- maxHealth
- health
- control_object
- incorporeal_move

Moved to carbon:
- silent
- alien_egg_flag

Moved to human: (human_defines.dm)
- All vars that used to be defined in human.dm
- underwear
- backbag
- miming

Deleted from mob:
- r_epil	//Old var, not used anymore
- r_ch_cou	//Old var, not used anymore
- r_Tourette	//Old var, not used anymore
- spellvoice() 	//Old proc, not used anymore
- get_damage()	//Unused, we have getHealth() that does the same thing

Removed some unticked files that have already been replaced.

This also fixes cyborgs being 'knocked unconscious' by rolling pins and secure breifcases
- Additionally; to knock someone out with a rolling pin you must now be targeting the victims head.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3976 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-03 17:14:49 +00:00
unknown
b0cb325bb6 Fixed a derp 2012-06-30 14:16:04 +03:00
unknown
427d409113 Merge branch 'master' of git://github.com/Baystation12/Baystation12 2012-06-30 13:43:08 +03:00
elly1989@rocketmail.com
257f6afdd4 Little name-fix for Pete.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3950 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-29 23:43:35 +00:00
Erthilo
f5b221bb63 Fixes a few places where if statements wouldn't work due to syntax errors. 2012-06-29 02:31:46 +01:00
Erthilo
73e2b5f5c2 Hotfix for stun batons harming on all non-help intents. 2012-06-28 22:31:16 +01:00
johnsonmt88@gmail.com
80b15df54b ** Mob Define Cleanup: Part 1 **
I'm currently working on moving all of the vars in mob_defines.dm and some procs in mob.dm into more fitting places. For example, ghosts and simple animals can not be cloned, so they do not need a cloneloss var. Cloneloss would be better fitting to /mob/living or even /mob/living/carbon. 

By moving these defines into proper children of /mob we lower the amount of resources that must be set aside every time a mob is created and we lower the amount of data that gets transfered between mobs when we combine, transfer or transform them. In theory, this should help free up some resources and combat lag.

Due to how integrated some of these defines are in the rest of the code, I'm going to be committing this cleanup in small batches. Doing it this way instead of one massive commit means that bugs will be easier to locate and identify. It is also less likely to overwhelm players with bugs, and if it still does, it will make it easier for us to revert only the section that is causing problems. Smaller commits also means merging with existing code will be less of a nightmare and has less potential for merging mistakes.

One of my goals in this cleanup is to add a description to every single variable in mob defines. While some of them are self explanatory, there are some there that are used in horribly obscure ways on top of having no comment to describe their use.

-----------------------

Mob defines moved to living:
- last_special*
- bruteloss
- oxyloss
- toxloss
- fireloss
- cloneloss
- brainloss
- halloss
- hallucination
- hallucinations(list)

*Note: I believe this variable is not needed, but the code it is used in (the resist verb) is cluttered and messy. That chunk of code probably use a re-write. I'll put it on my TODO list and if I survive mob_defines I'll try to get around to it but if anyone wants to do it for me, that would certainly help!

-----------------------

Mob procs moved to living:
- getBruteLoss()
- adjustBruteLoss()
- getOxyLoss()
- adjustOxyLoss()
- setOxyLoss()
- getToxLoss()
- adjustToxLoss()
- setToxLoss()
- getFireLoss()
- adjustFireLoss()
- getCloneLoss()
- adjustCloneLoss()
- setCloneLoss()
- getHalLoss()
- adjustHalLoss()
- setHalLoss()
- getBrainLoss()
- adjustBrainLoss()
- setBrainLoss

Mob procs moved to carbon:
getDNA()
setDNA()

-----------------------

Mob verbs moved to carbon:
- Sleep
- Lay down / Get up

-----------------------

The : operator...

The thing that has been killing me through this whole cleanup is people using or copy/pasting the : operator everywhere. 


*** Please use obj.var_or_procname. Do not use obj:var_or_procname ***


Using obj:procname will not throw a compiler error if obj does not have that specific var or proc. This means that the coder making changes will NOT be informed of an error which will result in a proc failing, potentially being completely unusable and definatly causing a runtime error.

With that said, I fully anticipate that most bugs (if any) caused by this mob define cleanup to be the result of : operators.

I've been replacing many : operators in favour of the . operator as I've been going, most noteably I went out of my way to remove almost every : operator from the 4000+ line Chemistry-Regents.dm
Exceptions:
- Water: Turf and Atmos related vars. I'm not familiar with the members and methods in those class' hierarchy.
- Silicate: because it's commented out and I honestly dont see it returning.
- Thermite: Turf and Atmos related vars.
- Corn Oil: Turf and Atmos related vars.

Final note: While this may be the source of some mob-related bugs, there are two other revisions that have been committed between now and the last time either of the the two tgstation servers have been updated. These revisions both touch mob-related files. I'm not blaming these other revisions for anything, especially since one of them is mine anyway, I'm just listing them here for refrence to help quickly identify any problems.
- My human/life() changes in r3925 
- Carn's life() standardizations in r3933

Stuff unrelated to mob defines:
- Fixed borgs and such being able to go into DNA modifiers.
- Changelog updated and I added Sieve to the list of coders.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3934 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-28 17:06:19 +00:00
Erthilo
73ba4c7f0f Readjusted Medical items heal caps. 2012-06-27 23:36:38 +01:00
unknown
869a82a3e3 Clipboards changes
+Added 'Rename' function
+Added ability to add photos to clipboards

%Fixed linebreaks not being replaced with <br> when viewing paper from clipboard

Signed-off-by: Chinsky <comma@nano.(none)>
2012-06-27 23:12:09 +03:00
Erthilo
e65b1739be Fixes surgery in general. 2012-06-27 18:08:56 +01:00
Erthilo
2ba8581267 Fixes gauze/ointment not being applied to wounds. 2012-06-26 20:36:16 +01:00
unknown
5565c466e7 Merge branch 'master' of git://github.com/Baystation12/Baystation12 2012-06-26 21:46:03 +03:00
Erthilo
6aaceee446 TG: Fixed harmbatons on everything other than harm, now it is the opposite way
round.
Clarified swirlie failure feedback.
Revision: r3781
Author: 	 petethegoat
2012-06-26 00:10:30 +01:00
Erthilo
67c5e8e3a8 Medical System Updates...
* Dragging someone while injured (brute) will have a small chance of injuring them further that increases depending on how damaged they are. This coincides with the blood spatters that are already generated.
* Blood is now actually lost from the person being dragged.

* Added splints that can be applied to broken arms and legs, and will reduce effects of broken limbs. These can be removed the same way as handcuffs. They show up on the mob and on examine.
* Added an autoinjector that can only hold five units, but acts like a hypospray.
* Added an advanced medical kit that Medical Doctors spawn with that has Advanced Trauma Kits, Advanced Burn Kits, autoinjectors, and splints.
* Health Scanners now show unsplinted fractures ONLY in arms or legs.

* People in critical (less than -50 health) from external trauma (100+ damage from brute and/or burn) bleeding, and with unsplinted limbs, will send a message to anyone trying to drag them, to warn them it would be a bad idea trying to move them. They will suffer a lot more damage if dragged while lying down.
* The correct procedure is therefore, A) Bring a roller bed, or B) Splint all limbs, stop all bleeding with gauze, and then drag them.

* Fixed CPR being performed at weird health levels.
2012-06-25 01:18:55 +01:00
elly1989@rocketmail.com
b21a3ed742 Fixes issue 586.
Culprit code:

/obj/item/clothing/gloves/latex/attackby(obj/item/weapon/cable_coil/O as obj, loc)
	if (istype(O) && O.amount==1)
		var/obj/item/latexballon/LB = new
		if (usr.get_inactive_hand()==src)
			usr.before_take_item(src)
			usr.put_in_inactive_hand(LB)
		else
			LB.loc = src.loc
		del(O)
		del(src)
	else
		return ..()

I was going to fix said code but after seeing that BALLOON is spelled incorrectly, that it uses amount == 1, balloons have no in-hand sprite AND don't even have  a desc I decided I shouldn't waste my time when the authorsimply couldn't be bothered. Commented it out.

Runtime fix for:
untime error: Cannot modify null.icon_state.
proc name: insert key pressed (/client/verb/insert_key_pressed)
  source file: mob_movement.dm,84
Cause: AIs don't have intents and stuff.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3911 316c924e-a436-60f5-8080-3fe189b3f50e
2012-06-24 09:54:36 +00:00