Commit Graph

37 Commits

Author SHA1 Message Date
metaglog
08277fe851 Prevents the airlock deny animation when the airlock is open (eg. when pulsing
the ID wire of an emagged airlock).
2014-01-31 06:55:27 +01:00
Giacomand
1a41abc609 The wire dialog will now properly close.
Refactored some of the code into procs.
Small feature: bombs tick louder when they are 10 seconds or less left, nuclear bombs were given the same treatment but with 20 seconds.
Fixed a bug with the syndicate bomb wire datum not using the CanUse().
2014-01-11 14:05:51 +00:00
Incoming
7418700cce Adds a badmin bomb that lets you var edit the explosion (for pure firebombs and stupid huge explosions [remember to toggle the bombcap first])
Changes how wire shuffling works to cut down on abandoned wires.

Removes a rogue processing_objects I missed before
2014-01-07 20:50:25 -05:00
Incoming
e3cf67ee72 Adds New Bomb/Bomb Cores + A BIG bomb bugfix
Adds a training bomb that doesn't explode but rather lets you know it would have exploded. Upon detonation or defusal it will give you your current score and rescramble the wires for another go. It should probably be added to the map somewhere in a pull that follows this.

Adds a badmin bomb that lets you summon in a number of whatever you want with var editing, it defaults to a single cookie.

Adds a specially skinned badmin clown bomb that summons in a 100 clowns by default. It honks!

Fixes a HUGE bug where, thanks to machinery automatically adding themselves to processing, bombs were ticking down two seconds at a time. This does mean that all bombs are now "nerfed" to twice the time it took before. Whether this is a good thing or should result in the timer going "back" to 30 seconds to keep the timing consistant is an open quesion.
2014-01-05 20:23:38 -05:00
Incoming
de972e3b02 Refactors syndicate bombs to remove the var degutted.
The bombs themselves no longer explode, the payloads (which now actually exist in the bombs) do.

This means that you can play cruel jokes on people by activating bombs with removed payloads or easily code in other kinds of payloads (there'll be a future pull with a few from me at the very least) and not have to touch the bomb code itself.
2014-01-02 12:20:05 -05: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
Incoming
ca920321ae Merge branch 'master' of https://github.com/tgstation/-tg-station into bombchange
Conflicts:
	maps/tgstation.2.1.2.dmm
2013-12-06 12:20:35 -05:00
Aranclanos
6a2bc0b6c5 Added some sanity after the spawn() procs in the wire datums of APCs 2013-11-22 15:50:28 -03:00
Incoming
87872e81e1 Syndicate Bomb Tweaks:
Syndicate Bombs now have enforced 60 second minimum timers, up from 30. Their crystal cost remains at 5.
Syndicate Detonators that can get around the 60 second timers are purchasable for 1 crystal for all (there are also ways to get around it with clever uses of the wires, but that's not new)
The Nuke Agents get a free syndicate detonator [MAP]
Syndicate Bombs can now be further disassembled beyond disarming them to let people actually lift the explosives out of the bomb, rendering it useless. These explosives will only detonate in the presence of another explosion, and give great research levels.
2013-11-22 04:01:51 -05: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
Giacomand
28d58598f6 Converted the old air alarm wires to use the more structured datum wires. 2013-07-10 12:50:04 +01:00
Giacomand
0396077d83 Merge pull request #878 from Ikarrus/kaboom
Syndicate Bomb Tweaks
2013-07-05 06:07:44 -07:00
Giacomand
7a425b3924 Merge pull request #899 from Aranclanos/APCPulseWires
APC pulse wires exploit fix.
2013-07-03 18:05:44 -07:00
Aranclanos
b30c608dfc Modified the checks that the pulsed wires do on APCs after the spawn() timer finishes. They will now react properly regarding if the wires are cut or not. 2013-07-02 05:02:36 -03:00
Giacomand
e4e6b3c4ae Merge pull request #842 from Aranclanos/BoltLights
Fix for bolt light sprite on airlocks.
2013-06-28 04:38:41 -07:00
ikarrus
a28537116c Syndicate Bomb Tweaks
Syndicate bombs are now structures rather than items. This means they cannot be hidden in lockers and disposals anymore. They also can no longer be used as grenades by crafty traitors.

They now audibly beep as their timer counts down, which is a visible display that can be seen when examined.
2013-06-27 22:05:03 -06:00
Aranclanos
23a020c860 Pulsing the bolt light wire with a multitool will now update the sprite of the airlock. 2013-06-22 12:52:27 -03:00
Aranclanos
2c0d2a54e9 Fix for airlocks having power when all the wires were cut. Someone overrided an If statement for when the backup wires are cut. 2013-06-21 01:45:51 -03:00
Pete Goodfellow
972a5cdc50 Merge branch 'master' of github.com:tgstation/-tg-station into taperecorder
Conflicts:
	icons/obj/device.dmi
	tgstation.dme
2013-06-19 17:05:47 +01:00
incoming
d16a8ba9c2 *Adds two syndicate bombs and a syndicate minibomb to the nuke ops shuttle, at the cost of the three tank transfer bombs
*fixes a runtime with syndicate bombs related to wires.dm looking for people who had been reduced to a fine red mist
2013-06-08 18:25:18 -04:00
incoming
f4f743e0a9 Adds the Syndicate Minibomb and Syndicate Bomb to traitor PDAs
The minibomb is based on grenade code with a blast radius of 1,2,4 and is found in syndieminibomb.dm. This is the same power as the default tank transfer bombs spawned on the syndicate shuttle.
It features new sprites by teh_wolf and existing inhands (the default grenade) and is a tiny item.
As a result of introducing an explosive grenade, grenade priming are now logged.
Its crystal cost has tentatively been set at 3.
---
The Syndicate Bomb is all new code contained in explosives.dm with additional wires code at syndicatebomb.dm. It does not make use of any tank transfer valve or grenade code.
The bomb has a blast radius of 2,5,11. This is the same power as the tank transfer bombs in the syndicate shuttle if they are boosted with oxygen.
It features new sprites by teh_wolf and existing inhands (currently using “electronic”) and is a bulky item.
The bomb is set by touching it in your hand or touching it on the ground if it has been wrenched down, allowing first to set a timer (min 10 seconds) and then giving an option to start the countdown. When the bomb is activated it states so to everyone within sight of it, giving a time to detonation in the process.
The bomb can optionally be wrenched to solid ground to foil would be spacers. When the bomb is set to countdown the bolts lock in, and cannot be removed by wrench alone.
The bomb includes a robust wires system for pulse pounding defusal attempts. Once a bomb starts ticking using the wires is the only way to stop it (it is not immune to del of course, but is unacidable).
The wires are as follows:
*Boom: Will detonate the bomb if cut/pulsed while the bomb is live, but will defuse the bomb on cut when it's not timing. Mending this wire is the only way to make a defused bomb potent again.
*Unbolt:  If the bomb has been locked to the floor cutting this will free it. Pulsing will hint at its function
*Delay:  Adds time (+10) to the timer when pulsed (it does not matter if the bomb is live or not). No function on cut.
*Proceed: Lowers the time when pulsed. If the timer is above 60 it will set it to 60, if it’s between 60 and 21 it will reduce the timer by 10, if it’s between 20 and 11 it will set the timer to 10. This will detonate the bomb when cut if it's timing. Note that this makes randomly cutting more dangerous than pulsing as there’s twice the number of wires that will explode.
*Activate: This will activate the timer if pulsed when the bomb is not timing, or will stop and defuse the bomb if it's cut while it IS timing. Pulsing it on an active bomb will hint at its function and add a little time (+5).
All syndicate bomb primings are logged.
Its crystal cost has tentatively been set at 5.
---
Misc
The “screwed” traitor uplink kit has had its tank transfer bombs replaced with one of each of these two bombs.
2013-06-07 21:39:56 -04:00
Pete Goodfellow
242554b1b0 Adds checks for the wires being intact to tape recorders, and readds the print transcript function. 2013-05-30 22:38:30 +01:00
Pete Goodfellow
7b690996cd Added wires to the taperecorder for playing and recording.
Fixed some minor taperecorder issues.
Updated the autolathe to make empty taperecorders, and tapes.
2013-05-30 16:56:23 +01:00
carnie
b84d12d949 *Small tidy-up of various helper procs*
-Turns out there was already a Gaussian PRNG proc already, used by mechs and turrets. I've replaced it with my one as mine has almost half the cost. (currently broken! still waiting for fixes to be pulled!)
-replaced between(min, val, max) with Clamp(val, min, max)
-get_turf(thing) now uses var/list/locs to locate its turf, rather than iterating up through loc of its loc of its loc...etc
-sign(num) moved to maths.dm
-InRange(val, min, max) replaced with IsInRange(val, min, max) (they were identical)
-Removed ismultitool() iswrench() iscoil() iswire() iswelder() iscrowbar() etc
-removed modulus(num) as abs() performs the same task! *roll-eyes*
-removed get_mob_with_client_list() as it is no longer needed (we have var/list/player_list now)
-removed get_turf_or_move() as it simply called get_turf
-removed get_turf_loc() as it was identical to get_turf()

*Additions:*
-The "Declare Ready" link in the lobby will automatically become "Join Game" if the round starts before you declare ready, so you don't have to click it twice
2013-05-27 12:21:43 +01:00
Giacomand
ffd1d65cda * Fixes a RandomCut() runtime. 2013-04-07 02:44:27 +01:00
giacomand@gmail.com
763b07d8d4 - Cleaned up false walls a bit and fixed some issues with using a welding tool with it. Fixes Issue 1288.
- Greatly decreased the goat attack damage. Fixes Issue 1310.
 - Changed how the suffixes are assigned for mulebots. Fixes Issue 1204.
 - Added some checks for occupants in sleepers/cryo/cloner pod, stops an exploit of being able to have a friend teleport you to the sleeper when you're in danger.
 - Re-added advance proc call for debug flag.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5796 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-28 23:22:37 +00:00
giacomand@gmail.com
46dc7d6084 Committing Faerdan's UI overhaul. Includes a UI browser class to easily manage and standardize user interfaces. This first release does not convert all the user interfaces in the game but only most of them. You can find samples of these user interfaces here: http://imgur.com/a/5dr6E
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5794 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-27 20:02:42 +00:00
giacomand@gmail.com
a6bde92d6b - Added a limit to broadcast messages. Messages will now cut off at 512.
- Facehuggers will now let you open the bag even if you're wearing facehugger proof gear.
 - Added some sanitizing to signal().

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5756 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-21 17:40:13 +00:00
petethegoat@gmail.com
6d5fe9d0e6 Standardised vending.dm, and also updated vending machines to use the new wire datums.
Fixes issue 1309. Kitchen Vendomat vends "weapon"

Removes the cautery step from debraining, as it was pretty pointless and needlessly confusing.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5754 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-21 15:25:05 +00:00
giacomand@gmail.com
6b03a2ebbb - The move_contents_to proc (which is used by shuttles and pods) will now move the air of the tile moving, instead of just replenishing the air.
- Added a new area proc, mob_activate, which is called by a living mob's Life(). You can use it to have mobs react differently to different areas.dm
 - Used the above change to make transit areas push mobs backwards.
 - Fixed the server room air alarm from freaking out.
 - Reverted my change to singularities, they will now pull correctly.
 - Made the wire interface screen bigger to accommodate for different fonts.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5749 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-20 22:10:14 +00:00
giacomand@gmail.com
a3501875a7 - Re added clicking on inventory HUD slots making you use the item, without having to click the item itself. I made storage slots in backpacks, when hit by an item, will put the item into that storage item.
- Added some garbage collecting procs for NTSL.
 - APCs now have its missing status text, for the wire interface.
 - Clicking on a hand HUD slot, while the hand is actively selected, will make the item being held call attack_self().

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5715 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-16 10:54:56 +00:00
giacomand@gmail.com
f111a19bcf - Fixes a lot of the issues with airlock and APC wires. The machine variable will be properly set now. APCs and Airlocks should probably shock now.
- Improvements to alien eggs so that they didn't bug and freak out, causing infinite loops. You can also destroy eggs if you keep hitting them after they burst.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5712 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-16 00:21:42 +00:00
giacomand@gmail.com
d2a41eea90 - Added plastic explosive wire(s). It has a single wire which when cut/pulsed will cause it to explode. Yeah you can attach a signaler to it.
- Gave the c4 a little bit more power.
 - Added a new icon for the staff of animation. Created by Teh Wolf.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5698 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-13 12:45:57 +00:00
giacomand@gmail.com
529c114cba - Added hackable wires to the Particle Accelerator Control Computer.
* Toggle wire will toggle the PA on or off when pulsed, if cut it will disable the PA and stop it from turning on.
    * Strength wire will increase the strength of the PA when pulsed, if cut it will toggle the strength to 0 and stop people turning it up.
    * Interface wire will stop people being able to use the control computer. Pulsing will toggle this, cutting/mending will toggle it on/off.
    * The limit power wire will allow the PA to be turned up to strength 3 when cut. When pulsed it will beep.
    * Nothing wire will do nothing.
 - New particle that will be shot at strength 3.
 - Decreased the hidden rating of longevity.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5693 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-13 04:22:27 +00:00
giacomand@gmail.com
6dca01967a - Converted two more wires to the datum wires. APCs and Radios (and intercoms) now use wire datums and can have signalers attached to them.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5670 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-08 16:40:56 +00:00
giacomand@gmail.com
06429d0fd1 - Forgot a file for my last commit.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5664 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-07 23:50:03 +00:00
giacomand@gmail.com
19439f85c2 - NTSL returns! Thanks muskets! I will be responsible for anything that goes wrong with NTSL.
- Wire datums arrive! These are wire datums which allows you to easily add wires in a maintainable manner. All wires by default will be allowed to have a signallers attached to it. I have converted cyborg wires, airlock wires, camera wires and mulebot wires to the new system.
 - Cameras will no longer have random wires for each camera. The power wire will toggle the power of the camera when pulsed.
 - Robots have a new wire! The lockdown wire will toggle the lockdown status of robots. You can now fix cyborgs that have been locked down and had the robotics computer destroyed. Should be interesting now that you can remotely pulse all datum wires.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5663 316c924e-a436-60f5-8080-3fe189b3f50e
2013-02-07 23:49:17 +00:00