Commit Graph

1180 Commits

Author SHA1 Message Date
coiax
f88184937a Glowsticks (#24761)
* Ports glowsticks from Bay

* Adds glowstick sprites

* Glowsticks in party crates, maint and emergency toolboxes
2017-03-08 02:38:15 -06:00
PJB3005
64db72a150 Merge remote-tracking branch 'upstream/master' into rebase-to-vg 2017-03-04 16:31:55 +01:00
coiax
81eae8b473 Adds "secondary flags"; stops cyborg radio EMP wires (#24613)
🆑 coiax
fix: Cyborg radios can no longer have their inaccessible wires pulsed by
EMPs.
/🆑

Adds a secondary flags system, for stuff that should be set as a flag,
but is too rare to clog up one of our coveted high speed flag slots.
Uses a null list to store the flags, when instanced, the list is in the
form flag_string->booleon, for the highest speed. I suggest we locate
other rare flags and move them to this system. (Like EARBANGPROTECT, I
mean come on).
2017-03-04 23:39:27 +13:00
PJB3005
a63608d023 Merge remote-tracking branch 'upstream/master' into rebase-to-vg 2017-03-03 16:31:00 +01:00
kevinz000
4408a8fbdc [READY]Pressure plates - Idea by Arianya (#24319)
* welcome to minecraft

* all good

* fix

* forcemove

* new procs
2017-03-02 19:35:20 +13:00
Joan Lung
d5df752c0e Faction fixes (#24396)
* Faction fixes

* heh

* hup!

* i'm smart
2017-02-27 00:39:01 +13:00
militaires
ac701e9299 Merge branch 'master' of https://github.com/tgstation/-tg-station into more_3/4
# Conflicts:
#	code/game/machinery/cloning.dm
2017-02-24 11:54:55 +03:00
MrPerson
f4e768c895 Ion storm improvements (#24223)
* Ion storm improvements

Ion storms have several new additions:
25% chance to flatly replace the AI's core lawset with something random in the config. Suddenly the AI is Corporate, deal w/ it.
10% chance to delete one of the AI's core or supplied laws. Hope you treated the AI well without its precious law 1 to protect your sorry ass.
10% chance that, instead of adding a random law, it will instead replace one of the AI's existing core or supplied laws with the ion law. Otherwise, it adds the generated law as normal. There's still a 100% chance of getting a generated ion law.

All of these stack so you could wind up going from Asimov to Paladin w/o the first law and w/ the last law replaced with THE SHUTTLE CANNOT BE CALLED DUE TO FIVE NINJAS. All the values are easy to tweak if you guys want them higher or lower or whatever.

Custom admin-sent and other fake ion storms (devils) will just add the law and have no chance of doing any of the bonus stuff.

Removed the admin verb to send an ion storm since you can just use the events panel.

Cleaned up some of the law-adding backend. Hopefully there's no double showing of the AI's laws after a lawchange as a result of this.

* Everyday I'm shufflin'
2017-02-22 13:31:04 +01:00
Cyberboss
56a6eaa8e6 Overlay queuing (#23922)
* Overlay queuing

* Fix SS flags

* Don't copy on assignment

* Flags processing

* Fix icon_smoothing

* MSO's helper proc

* Legacy detection

* Make it work

* Fixes shitcode

* Fix the flag

* |= -> +=

* OK, how did I fuck that up?

* shitcode

* Conditional assoc queue while initializing

* Cleanup everything

* Orange meme

* This isn't perfect, but its the best byond will give us.

* forgot about dir

* oh ya

* This was litterally the last thing i did last night before heading to bed

You can tell can't you?

* Fixes various shit

* Let's not ever pause

* Fix the flag

* Cleaned up some missing shit. Added image dummys

* Remove the one usage of FPRINT

* Jesus get rid of this
2017-02-22 21:44:55 +13:00
coiax
de0b29dea6 Partially grown clones are horribly disfigured + cardiac arrest refactor (#24106)
add: Refactors heart attack code, a cardiac arrest will knock someone unconscious and kill them very quickly.
add: Adds corazone, an anti-heart attack drug, made by mixing 2 parts Phenol, 1 part Lithium. A person with corazone in their system will not suffer any negative effects from missing a heart. Use it during surgery.
add: Abductor glands are now hearts, the abductor operation table now automatically injects corazone to prevent deaths during surgery. The gland will restart if it stops beating.
fix: Cloning pods always know the name of the person they are cloning.
add: You can swipe a medical ID card to eject someone from the cloning pod early. The cloning pod will announce this over the radio.
del: Fresh clones have no organs or limbs, they gain them during the cloning process. Ejecting a clone too early is not recommended. Power loss will also eject a clone as before.
del: An ejected clone will take damage from being at critical health very quickly upon ejection, rather than before, where a clone could be stable in critical for up to two minutes.
add: Occupants of cloning pods do not interact with the air outside the pod.


After @Cyberboss 's multi-pod cloning got merged, I scrapped the multi-pod stuff from my own work, and brought back the maiming.

Early ejected clones being partially disfigured is a cool feature.

This penalises (but does not completely remove) speed cloning, as there is a window where the clone can be ejected without missing any limbs or organs. Otherwise the clones will probably die due to lack of lungs or heart.

Heart attacks are more lethal, there's an easy medicine for treating them, if chemistry have it on hand.

Clones not reacting to the air around them is a buff to plasmamen (although they'll still burn to death once they're ejected in an oxygen atmosphere).
2017-02-21 11:13:54 +13:00
militaires
a9c0e59aba pls 2017-02-20 23:06:05 +03:00
Pieter-Jan Briers
ecd32661af Boost PDA light a tad 2017-02-18 23:47:18 +01:00
Pieter-Jan Briers
b5b93e51f7 Merge remote-tracking branch 'upstream/master' into rebase-to-vg 2017-02-18 16:52:07 +01:00
Cyberboss
b6d5aba7b2 Removes area.master. Moves area/New to Initialize (#24134)
* Removes master areas

* Ports area/New to Initialize
2017-02-18 01:04:47 +13:00
PJB3005
946ad1c6d3 Fix get_lumcount calls I missed. 2017-02-13 17:50:16 +01:00
PJB3005
6221b9fa98 COLORS 2017-02-12 23:53:22 +01:00
PJB3005
f11c558c99 Merge remote-tracking branch 'upstream/master' into rebase-to-vg 2017-02-12 16:35:57 +01:00
Shadowlight213
c8c152bd37 Removes unused translate_hive var (#23924) 2017-02-11 18:37:44 -06:00
James Denholm
c96dc61b54 Make pens able to un-ruin casette tapes (#23852)
* Make pens wind unwound cassette tapes

* Slow the pen-winding of ruined tapes a bit.

Probably should be slower than screwdrivers (which have a toolspeed of 1). Pens are fiddly, confusing things, after all, and nobody actually knows how they work.

* Refactor tape-winding to avoid code duplication

Also fixes indents and hopefully hides a bit of idiocy on my part nobody look too close okay
2017-02-09 16:08:26 -06:00
PJB3005
8ce6ae2b87 Merge remote-tracking branch 'upstream/master' into rebase-to-vg 2017-02-08 14:30:23 +01:00
Cyberboss
b86e224571 Makes qdeleted and qdestroying macros (#23666)
* Makes qdeleted and qdestroying macros

* Makes QDELETED and QDESTROYING uppercase

* Swap qdel checks istype's for != null's

* Fix it

* How was this missed?
2017-02-06 00:59:27 +13:00
Cyberboss
8888f6424c Fixes geiger counters not returning a qdel hint (#23621) 2017-02-03 11:01:39 +01:00
KorPhaeron
e850988a80 Removes weakeyes 2017-01-31 21:38:49 -06:00
Cyberboss
3f7f5d4000 Removes/Refactors /mob/unEquip (#22918)
* Part1

* IT COMPILES!!!!

* Fuck wait this was missing from that last

* Update handlabeler.dm

* Update handlabeler.dm

* Fixes n shit

* Fix this

* Fixes #23310

* Fucking @RemieRichards was right

* Fixes devil unEquip

* WTF ARE BITFLAGS?

* THERES THE FUCKING PROBLEM

* Fixes
2017-01-31 09:28:31 +13:00
Cyberboss
f7c9749ca0 Fixes some bad addtimer calls. Adds INVOKE_ASYNC. Replaces addtimer(..., 0) (#23424)
* Fixes some bad addtimers

* Adds INVOKE

* Warning for addtimer

* Working syntax

* Another bad call

* Fixes the addtimer warning

* Add suppress_zero_warning to addtimer

Useful for addtimer that uses vars

* Add INVOKE_AGAIN for when the var is already defined

* Replace addtimer(...,0) with INVOKE((...))

* Much more sensible syntax

* Less overhead, less copypaste

* Rename INVOKE_ASYNC

* Use a macro

* Allman style

* Wait, why make it a datum in the first place?

* Revert the rename

* Rename again, keep line endings

* typo

* More typos

* Untouches Addtimer

* Update callbacks.dm

* Update timer.dm

* Revert allman style

* Revert "Revert allman style"

This reverts commit 47361da15bd04eca138be5f13acdc9dd5ba89331.

* Trying to match that whitespace diff

* Why is this missing?

* I'm not fucking dealing with this!
2017-01-31 09:20:54 +13:00
Core0verload
4424fb2f2a Fixes reagent ID being displayed as blood type (#23379) 2017-01-28 01:09:42 -06:00
Cyberboss
5959ac32cc Refactors atom/Initialize. Fixes ruins being initialized twice (#22778)
* Refactors atom/Initialize

Captialized for compiling correctness and to be more inline with Destroy

Will now be called from atom/New if the world initialization loop in SSobj has already run. Should always call the base.

Now comes with the `roundstart` parameter indicating whether or not it was called by SSobj or atom/New

Other fixes/tweaks:
- Renamed a proc called Initialize in abduction consoles to Setup
- Removed /obj/item/device/radio/headset/headset_sec/department: Broken and referenced literally nowhere in the code
- Removed a spawn from the Initialize of turbine_computer which made literally zero sense
- Generalized the proc which fixes RND servers with no id set

Reasoning: It's better to check roundstart per function than to have to duplicate code in New and Initialize. Think of it as a safer New for atoms. If we move enough stuff to it, initial map load performance will increase due to less New calls

* Fixed a thing

* Actually, fuck the police

* >Expecting a merge without errors

* >Not calling ..() in New

* Sanic

* Fix the headset bug

* Makes sure the map loaders dew it right

* Fixes ruins being initialized twice

* Rename roundstart -> mapload

* Revert "Rename roundstart -> mapload"

This reverts commit 667c327fd2ccfa3ce4f4db52eac03f9e8b0f6812.

* Remove unrelated change

* A more direct solution to map loads

* And now we shouldnt need this warning

* Add the new var to SSobj recovery

* Revert "Revert "Rename roundstart -> mapload""

This reverts commit dee07dbd5e4696554ac43aae5b91cce743b9b9e0.

* Line endings
2017-01-23 09:37:45 +01:00
Kyle Spier-Swenson
12570805bd Closes the Pool. (#23150)
* Delete pool.dm

* Removes usage of PoolOrNew

* Wrap up
2017-01-22 16:00:23 -05:00
PJB3005
7356e80484 hey that should be everything except making it compile. 2017-01-17 22:08:27 +01:00
XDTM
30bfe13f81 Makes agent ids change name 2017-01-13 22:10:52 +01:00
Firecage
50bbf5aa50 Allows syringes and droppers to show their reagents when examined while wearing things such as Science Goggles. (#22618)
* Allows syringes and droppers to show their reagents when examined.

* rearranges my logic

* replaces SEMIOPENCONTAINER with TRANSPARENT

* Silly spelling error fix.

* Moves the defines from flags to container_type to avoid issues with conflicting flags

* changes it back to obj/item/O

* Moves the OPENCONTAINER and TRANSPARENT defines to the reagents.dm
2017-01-04 20:00:46 +13:00
Kyle Spier-Swenson
bee4b132a3 [READY]Makes addtimer use callbacks (#22660)
* Makes addtimer use callbacks

* I broke the comment

* I fucked up the regex

* this was a silly idea.
2017-01-04 16:02:56 +13:00
Joan Lung
624ea1352c Adds a wrapper for flick_overlay() (#22642)
* Adds a wrapper for flick_overlay()

* are you sure
2017-01-04 07:55:45 +13:00
Joan Lung
feede86b09 Adds a proc for duplicate-avoiding associated list keys (#22608)
* Adds a proc for duplicate-avoiding associated list keys

* neat
2017-01-04 07:30:46 +13:00
kevinz000
079b377172 [READY]PAI PATCH 2 (#22214)
* shit

* shit2

* ...

* ....

* ...

* stuffs

* fixes

* dup

* stuff

* lights and jets

* ...

* wew

* ...

* ...

* wew

* ...

* ..

* .

* Update life.dm

* Update life.dm
2016-12-19 15:33:34 +13:00
MrPerson
94eac6ca0e Fix electric chairs not working sometimes (#22250)
Fixes #22155
2016-12-17 18:25:37 -05:00
XDTM
7d1a67d0c8 Abductor tools and tool sound refactor. (#22125)
* Everything in the PR

* I'm taking that as a yes
2016-12-14 18:09:41 +13:00
kevinz000
bb80984957 [READY: I DID TEST]I pulled a goofball and broke pAIs (#22161)
* ghost notifications

* FUCK

* fuck2
2016-12-13 21:06:51 +13:00
kevinz000
1400a0d525 YOG pAIS PART 1 - MOBILE CHASSIS (#21871)
* pAI Candidate Verb

* sprites

* fuckxenos

* ...

* animal+alien

* ...

* ...

* ...

* progress

* ...

* .

* ...

* fixes

* ...

* ...

* ...

* ghostUI

* .

* .

* ...

* fixes

* ...

* BUNNIES

* ....

* ...

* merf

* nerfs
2016-12-13 14:47:03 +13:00
Cheridan
2dd1a87345 Merge pull request #22083 from ChangelingRain/multiplierspeed
Refactors toolspeed to be a multiplier instead of a divisor
2016-12-10 19:22:44 -06:00
blockheads
60b5f9d4b0 PDA fix #22038 (#22060)
* reset it

* fixes #22038, issue where pda wasn't displaying holding id/pen when using the messenger
2016-12-09 21:11:49 -05:00
Joan Lung
43ce2667f4 Merge branch 'master' of https://github.com/tgstation/tgstation into multiplierspeed 2016-12-09 18:03:43 -05:00
Joan Lung
a3be7a9226 Refactors toolspeed to be a multiplier instead of a divisor 2016-12-09 16:55:51 -05:00
Mervill
8daf8eab09 The light replacer can now consume glass shards (#21993)
* The light replacer can now consume glass shards to create bulbs

* woops

* Buff glass shards to be worth %75 precent of a glass sheet (currently 3)
2016-12-09 09:08:03 +13:00
Kyle Spier-Swenson
dedb16826e Speeds up world init. (93s -> 49s) (#21992)
* Speeds up world init.

* Armor is now new inited for obj and the first level of subpaths.
* Actions is now lazyinited and deleted with empty.
* Actiontypes is now only inited when actually used and deleted once it pre-fills actions with the action buttons.
* Pipes now prefill their node list(s) in new() using new /list/ (count) syntax to speed up the list initaliztions and remove the init proc.
* Pipes no longer store their item version, instead creating it on the fly when deconned
* Walls no longer store their metal stacks, instead creating it on the fly when deconned.
* obj, walls, floor, plating, item, machinery, structure, pipe, pipenet, atom, and movable no longer have an (init) proc. (along with a few other smaller examples)
* Atmos can pass checking is now a var with the ability to have a proc be call in advance cases.
  * (as a side effect, I had to fix a few things that were calling atmosCanPass rather then using the pre-calculated list, this should speed up chemfoam and flame effects greatly)

* Reverts upload limit
(remind me one day to defuck this, it could easily be a config thats not editable by vv to make changes easier)

* Makes apc update icon a bit faster.
APC new is some what high on the profile of world init, still not sure why, but this stood out as a waste of cpu so i fixed it.

* Fixes runtime with atmos backpack water tanks.

* Makes smoothing faster (and fixes turfs smoothing twice at init)

* Makes apcs init faster by replacing some spawns with addtimer

* fix transit turfs.
2016-12-08 21:50:15 +13:00
Joan Lung
9df03b0daf You can now cancel AI intellicard wiping (#21944)
* You can now cancel AI intellicard wiping

* OUTSIDE HELP
2016-12-06 11:53:00 +13:00
Joan Lung
551ede6d35 Kills all remaining text pronoun macros (#21916)
* Kills all remaining text pronoun macros

* review your own code

* oh right one further

* more

* \
2016-12-04 21:32:31 +01:00
Mervill
3f68bd7202 Merge branch 'master' into a_intent
Conflicts:
	code/modules/mob/mob_defines.dm
2016-12-04 00:38:37 -08:00
WJohn
96c93f6b38 Merge pull request #21870 from KorPhaeron/cyborg_tools
Engineering Cyborg Tools Now Use the Default Sprites
2016-12-03 02:53:11 -05:00
Mervill
0972f78800 a_intent now uses defines 2016-12-02 22:27:30 -08:00