This fixes a fuckload of runtimes and makes structures and machinery being able to cause damage on attackby procs, for example, using TK.
I'm not entirely happy of doing this, adding another var to a base class, but it's better than leaving a lot of hasvar() procs and it's easier than moving obj/machinery, obj/structure, etc, to obj/object/machinery, obj/object/structure, etc.
Also it doesn't break the entire game.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5457 316c924e-a436-60f5-8080-3fe189b3f50e
Runtime fix for being hit by something without there being a usr. This was most likely due to explosions or possibly mass drivers.
Runtime fix for simple animals using department channels. Only parrots can use them now as they are the only simple animal with the 'ears' variable.
Runtime fix for the mech's energy relay process() when there is no battery in the mech.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5405 316c924e-a436-60f5-8080-3fe189b3f50e
All credits to the author for this handy little script.
I Committed the modified python script to tool directory. Although it needs to be in the root folder of your repo to work.
To notice the improved compile times, in dreammaker go to Build > Preferences > and untick "automatically set file_dir for subfolders"
If this commit inteferes with any large projects just revert it, do your thing, then rerun the script. Easy-peasy.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4488 316c924e-a436-60f5-8080-3fe189b3f50e
update_clothing() has been broken up into it's key parts. A full explanation can be found in code/modules/mob/living/carbon/human/update_icons.dm
the tl;dr of it is that overlay updates are no longer called by the gameticker. Instead they are called by procs such as u_equip db_cick etc. This means faster updates (although admittedly, more of them can be called per tick). This however is offset by the fact that specific overlays can be updated now, vastly improving its efficiency. This will especially help when there are large numbers of dead mobs.
Fixed the throw code for TKgrab so it can be toggled.
Cloaking for aliens/humans/ninjas was changed. It's very crude at the moment and for that I apologise. But it works and is very efficient.It also stops cloaked individuals becomming invincible due to people being unable to hit them (even when they know exactly where they are)
Fixed a bunch of bugs with damage-overlays. They were updating FAR FAR to frequently. They were also horribly inefficient. They should now be virtually seamless when updating and only use cached icons, so they aren't affected by lag as badly. This may help with explosions lag a little.
There's still a tonne of stuff I need to refine with this. I'll be refining it down into some helper procs to reduce on code duplication and such
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3811 316c924e-a436-60f5-8080-3fe189b3f50e
- Added Exosuit Nuclear Reactor
- Added Ripley construction steps sprites (courtesy of WJohnston)
- Exosuit Sleeper can now inject occupant with reagents taken from Syringe Gun
- Exosuit Cable Layer will now auto-dismantle floors
- Exosuit Heavy Lazer cooldown increased, Scattershot now fires medium calibre ammo (less damage)
- EMP now drains half of current exosuit cell charge, not half of maximum charge.
- Exosuit wreckage can be pulled
- Fixed several possible exosuit equipment runtimes
- Moved all mecha-related icons to icons/mecha
- Mecha equipment messages will show equipment icons in chat window
- Fixed mecha creation reports being sent at wrong construction step
- Played with changelog markup. For some reason javascript is extremely slow in byond browser, I'll look into it.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3057 316c924e-a436-60f5-8080-3fe189b3f50e
- Combat exosuits melee won't gib dead mobs
- QM exosuit circuit crates cost lowered to 30 points
- Exosuit plasma converter generates 15 power per tick (was 10)
- Exosuit internal tank connected to atmos port now will update contents
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2934 316c924e-a436-60f5-8080-3fe189b3f50e
- atom.forceMove() proc. Ignores density and other Move() restrictions, but calls Exited() and Entered()
- var/emagged moved to /obj/machinery class
- anyprob() helper proc.
- Mecha internal damage vars encapsulated.
- Mech Fabricators now require robotics ID to operate. Emag removes this restriction.
- Added Odysseus Medical Exosuit and it's parts. Has integrated Medical Hud and ability to mount medical modules.
- Added Sleeper Medical module for medical exosuits. Similar to common sleepers, but no ability to inject reagents.
- Added Cable Layer module for exosuits. Load with cable (attack cable with it), activate, walk over dismantled floor.
- Added another exosuit internal damage type - short circuit. Short-circuited exosuits will drain powercell charge and power relay won't work.
- You should be able to send messages to exosuit operators using Exosuit Control Console
- Gygax armour and module capacity nerfed.
- Exosuit weapon recharge time raised.
- Bugfix: EMP actually drains exosuit cell and damages it
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2780 316c924e-a436-60f5-8080-3fe189b3f50e
- Added teleporter datum. do_teleport proc is now just a wrapper for it.
- Added damage absorption to mechs.
- Added mecha step and turn sounds.
- Cleaned effects code a bit.
- Metal foam should now block air movement.
- Since sd_ lightning library chops areas into pieces, turrets now work with master area.
- Tried to optimize DesignHasReqs proc.
- Added plasma converter and laser cannon mecha equipment.
- Other cosmetic changes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2463 316c924e-a436-60f5-8080-3fe189b3f50e
- Moved byjax callback processing to JS part.
- Disabled exosuits verbs from showing when RMButtoning.
- Added radios to exosuits. Setting can be found in 'Electronics' menu.
- Exosuit maintenance can be initiated even if it's occupied. The pilot must permit maintenance through 'Permissions & Logging' - 'Permit maintenance protocols'. For combat exosuits it's disabled by default. While in maintenance mode, exosuit can't move or use equipment.
- Nerfed EMP effect on mechs.
- Fixed build_path for atmospheric monitor circuitboard design
- Bugfixing and bugmaking.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2343 316c924e-a436-60f5-8080-3fe189b3f50e
Rewrote the job selection system to use bitflags and the jobs are now objects.
Fixed a path conflict with effect which caused a few things to be unable to be clicked on.
Commented out the job.txt, Urist if you still want it to load from the .txt give me a yell and I can update it to work with the job objects.
Fixed up the bits that were missing the slightly updated mob organ attack code.
Moved the traps file into unused.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2340 316c924e-a436-60f5-8080-3fe189b3f50e
/obj/effects is now /obj/effect.
/obj/station_objects is now /obj/structure.
Did a bit of minor blob work.
The Bay 12 body bags were replaced with closets because having two sets of code that do almost the same thing is silly.
Changed back a few of the last jobproc edits as the remove from list before assign was a check to see if the mob was fucked up and if it was remove it so we did not check it again as it would still be fucked up.
The medbay/tox monkeys names are random once more. More random name monkeys will help with changeling and clean up the observe/mob menus.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2324 316c924e-a436-60f5-8080-3fe189b3f50e
Two new categories were made: station_objects and effects. station_objects, which I'm sure someone will want renamed to 'structures' contains the objects which don't need process() or power code.
Effects contains objects which are either landmarks, triggers, spawners or decal.
Screenshot:
http://www.kamletos.si/new%20object%20tree.PNG
I didn't notice any bugs, but with a revision editing 276 files of byond code, you never know.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2323 316c924e-a436-60f5-8080-3fe189b3f50e
- Fixed bug with mechs not reading ID permissions from PDA.
- Updated H.O.N.K menu code.
- There should be no delay in updating mech equipment info in exosuit stats window.
- Added armor booster sprites.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1510 316c924e-a436-60f5-8080-3fe189b3f50e
Note for coders: in order to help with seaching of health-related bugs I have moved many procs from /mob/ under /mob/living/.
Also, done some clean up and rearranging.
Results:
-admin rejuvenating now works again;
-people screams if getting creamated while still alive;
-diseases actually loose your health;
-monkeys wearing masks receive protection from acids as humans did;
-and other minor fixes and improvements.
Bugfix for imbuing a talisman.
RD now spawns with only 2 pens instead of 3.
Audible emotions can be heard by people outside of locker/other container.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1446 316c924e-a436-60f5-8080-3fe189b3f50e
- Added Durand parts and Durand construction (currently using Gygax part sprites)
- Other mecha tweaks.
- Fixed smelter not showing sand as smeltable material.
- Cyborg gibbing inside recharge station should now update its icon and power consumption.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1288 316c924e-a436-60f5-8080-3fe189b3f50e
- Mechs equipment is customizable (you can add different equipment to mechs). Weapons go to combat mechs only, clown mech equipment - to HONK only. Clamp goes only to Ripley.
- Mech equipment can be built by mech fabricator.
- Added mecha RCD, mecha teleporter, mecha wormhole generator equipment.
- Equipment(if any left) can be pried from mecha wreckage with crowbar.
- Mech control console circuitboard added to circuit storage.
- Mechs can teleport from teleport hub.
- Fixed ripley cargo problems with moving objects(bots, carps, huggers etc). Loading hostile organisms may be harmful. Be vigilant.
- Fixed bug with many mobs climbing inside one mecha.
- Fixed mecha "unable-to-move" message spam.
Other things:
- Rooms in random asteroids for extended and sandbox (WIP)
- Misc.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1190 316c924e-a436-60f5-8080-3fe189b3f50e
- Added H.O.N.K construction.
- Removed unnecessary mecha parts.
- Fixed bug with switching intent while in mecha
- Tweaked mecha access permissions (maintenance hatch can be opened if player has any of the mecha internals_req_access permissions, piloting allowed only if player has all of operation_req_access permissions)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1042 316c924e-a436-60f5-8080-3fe189b3f50e
- Players can modify operation permissions of newly constructed civilian mechs. Click on mech with ID card or PDA with ID inside.
- Added robotics access to default mecha maintenance permissions (all mechs) and operation permissions (civilian models only).
- Fixed double adminlog message of explosion proc.
- Fixed accidental mecha wreckage deletion.
- Tweaked mecha internal fire processing.
- Added some mecha-related sounds.
- Moved GaussRand to helpers.dm and added GaussRandRound helper proc.
- Other small changes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1023 316c924e-a436-60f5-8080-3fe189b3f50e
- Honker HONK nerfed a little
- Marauder pulse gun is now imba.
- Some small tweaks.
- Proper speech rendering for mecha pilot
- Construction datum for my fun and profit
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@902 316c924e-a436-60f5-8080-3fe189b3f50e
- Tweaked clown mecha honk to be less annoying.
- Added broken mecha objects, which can be salvaged for materials.
- Fixed marauder space flight.
- Added infra_luminosity to mechs.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@828 316c924e-a436-60f5-8080-3fe189b3f50e
- H.O.N.K exosuit.
- Mechs can push mobs and objects.
- Mecha clickspam bug should be fixed.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@794 316c924e-a436-60f5-8080-3fe189b3f50e
- Added control interface for atmo mixer and pumps.
- Atmo meters now also show gas temperature
- Mecha logs.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@741 316c924e-a436-60f5-8080-3fe189b3f50e
- Added "control lost" mecha malfunction (randomizes movement direction and action targets)
- Mecha weapons and tools can be destroyed.
- Gygax rearmed with taser, laser and flashbang grenade launcher.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@701 316c924e-a436-60f5-8080-3fe189b3f50e
- Turrets should now target mechs (there's a possibility of nasty errors there).
- Global iterator datum (just for lulz. Check readme inside global_iterator.dm and mecha.dm for examples).
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@684 316c924e-a436-60f5-8080-3fe189b3f50e
- Added ID check for mechs.
- Custom mouse pointer test for combat mechs.
- Fixed atmo tank injectors showing "On hold" forever.
- Made max metal, glass and rods stack amounts global constants for easy tweaking.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@576 316c924e-a436-60f5-8080-3fe189b3f50e
- Implemented gauss distribution for asteroid generation (may come in handy for other things, so made it a global proc).
- Exosuit fixes.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@406 316c924e-a436-60f5-8080-3fe189b3f50e