Commit Graph

5636 Commits

Author SHA1 Message Date
coiax
338e67808e You can now buy telecrystals in stacks of 5 and 20 (#22818)
🆑 coiax
add: Telecrystals can be purchased in stacks of five and twenty.
add: The entire stack of telecrystals are added to the uplink when
charging them.
/🆑
2017-01-26 13:37:22 +01: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
Kyle Spier-Swenson
c341178ff4 Fixes bug with addtimer keeping old timers around, makes addtimer even faster. (#23126)
* Fixes timers being left around, Makes addtimer() sanic fast.

This adds a new flag, TIMER_STOPPABLE. Most(80%) of the overhead for addtimer() was in adding the timer to the associated lookup list for deltimer() to use. Moving that functionality to a flag so it wouldn't slow down the 70% of things calling timers puts the final nail in the coffin of byond's sleep/spawn().

spawn: 324 seconds across 5,948,372 calls

addtimer: 67 seconds across 5,953,220 calls

The testing setup for profiling was included in this commit, it will be removed in a later commit. @Fox-McCloud

* Remove profiling procs.

* fix runtime

luckly when this happened, we were about to resume anyways.
2017-01-20 09:31:50 +01:00
Cheridan
b47ec35ee9 Merge pull request #23068 from kevinz000/patch-34
Fixes lollipops triggering weldertank explosions
2017-01-18 14:14:36 -06:00
Joan Lung
27a54d16ff Merge pull request #23051 from Core0verload/defib_fix
Fixes defibrillators
2017-01-17 18:42:57 -05:00
kevinz000
08fe5ee84b Update robot_items.dm 2017-01-16 19:59:34 -08:00
c0
4989e12b45 Fixes defibs 2017-01-16 11:47:18 +03:00
oranges
3ac94a85cc Merge pull request #22994 from XDTM/ChameleonPdaNowUseful
PDA can update their name when an agent id is inside
2017-01-16 20:58:54 +13:00
kevinz000
646bb99b99 Lessens spray can spam (#22970)
* Update crayons.dm

* Update crayons.dm
2017-01-14 11:55:35 +13:00
oranges
ddb4b89619 Merge pull request #22968 from XDTM/LargeSlime
Fixes large grenade interaction with slime cores
2017-01-14 11:55:10 +13:00
johnthedonut
c5d9bb4588 Fixes wetting a mop with a bucket so it wont clean the tile you are standing on. 2017-01-13 22:16:51 +01:00
XDTM
9dd8ff7934 Fixes extinguisher violence (#22928) 2017-01-13 22:14:27 +01:00
XDTM
30bfe13f81 Makes agent ids change name 2017-01-13 22:10:52 +01:00
Thunder12345
d56b3f469c Shield overlays from shielded hardsuits and nullrod staffs (#22940) 2017-01-12 15:09:25 -05:00
XDTM
e8e7af2fc8 Fixes bad message (#22966) 2017-01-12 15:05:02 -05:00
XDTM
44bc3b6cf5 Fixes large grenade interaction with slime cores 2017-01-12 12:25:05 +01:00
oranges
f4e325e5ed Merge pull request #22765 from Mervill/the_kilt_is_now_op
Hardsuits, amour and other suits that cover the feet now protect against glass shards
2017-01-12 13:54:32 +13:00
XDTM
64e4994fea Fixes material amount (#22954) 2017-01-11 19:51:13 -05:00
kevinz000
0601f1f0f6 Update twohanded.dm (#22904) 2017-01-11 19:49:42 -05:00
oranges
41a6efd987 Revert "Fixes instant summons and probably a few other edge cases" (#22917) 2017-01-10 20:55:26 -05:00
Joan Lung
75999e1c6c Fixes instant summons and probably a few other edge cases (#22890)
* Fixes instant summons and probably a few other edge cases

* woken in a fog don't sweat it
and reckon none of it had come from you

* echo

* no lesson in magic, just untimely dreams

* slapdash code queen
2017-01-11 12:53:05 +13:00
oranges
3ad35c23ab Merge pull request #22869 from Cyberboss/ReagentsShouldNotBeLeftNull
Moves reagents back into atoms. Fixes confusion between reagents/reagents_list
2017-01-11 12:49:02 +13:00
Haevacht
6adb35f57e Should fix the crusher, again, and the offhand runtime (#22836)
* This shouldn;t autoPR.

* should probably use it properly eh

* Update twohanded.dm

* Reeeeeeeeeeeeeeeeeeeeeeeeeeeee.

* 2 less lines, yay for OR
2017-01-10 15:00:20 +13:00
oranges
f79476634c Merge pull request #22829 from ChangelingRain/blockedturffix
Fixes a few things considering turfs 'blocked' by a mob
2017-01-10 09:57:43 +13:00
oranges
8af3b6c975 Merge pull request #22828 from KorPhaeron/axe
Fixes energy axe not having the sharp flag
2017-01-10 09:57:20 +13:00
Cyberboss
6e622eedd1 Moves reagents into atoms 2017-01-08 23:02:37 -05:00
Joan Lung
1f85d27652 Fixes a few things considering turfs 'blocked' by a mob 2017-01-07 17:58:51 -05:00
KorPhaeron
dbf01363b9 Energy Axe can dismember 2017-01-07 14:19:18 -06:00
bgobandit
fbf5c902f6 spelling issues too how quaint 2017-01-07 12:53:27 -05:00
Trugath
4105ca9ea6 Tgmonkey (#22338)
* Monkeys are a bit more of a handful
They will aggro, steal, pick up weapons and stuff bodies in disposals

* search using held_items instead of manually

* Only natural monkies should reliably stun
Natural monkies don't try to stun-lock

* Pushes equip_in_one_of_slots to carbon from human

* Removed unused helper.

* Make the trip and stun only against monkeys
The main reason this is here is for the swarm behaivour.

* Just return true for now. It should flee on next life tick.

* remove blocking call from Life

* stuff_mob_in blocks so make it non-blocking

* add check to stop add/remove in same function
Only occours if the monkey attacks someone who isn't in the enemies list.
This only happens during a monkey swarm. Best to check.

* Fix for monkeys ripping stuff off walls.

* Moved shared emote/weaken down into living
Called the new function knockOVer. Monkey and Secbot both have different
control flow before the shared code.

* Stop monkeys fighting over body

* Remove commented out code

* Reduce flee range

* replace spawn with addTimer by moving code into callbacks

* Move magic numbers to defines
Also removed 900 delay in resisting cuffs as its a useless argument

* Refactor. Attacking has a function: monkey_attack
Combined de-aggro into it

* rework monkeyDrop to force drop
Also check for deleted items when snatching items

* Aggresive can be toggled by an admin
Allows for a mass mob of angry monkies

* Tweak aggressive monkeys to attack each other less
Monkey vs Monkey probability is a define
Warning: Once MVM combat breaks out in large mobs, mayhem insues

* Set the monkey back to idle once it attemps to dispose the body

* fix for aggressive monkeys self-harming

* comment wording fix

* changed walk2derpless to a callback and fixed deathgrip
2017-01-06 14:59:37 +01:00
oranges
b32061ea37 Merge pull request #22727 from XDTM/PocketShoes
Fixes storage pockets preventing the use of items on the clothing item
2017-01-06 09:57:45 +13:00
Haevacht
044adf9446 Fixes the crusher, and future twohands required items, equipping to slots (#22712)
* If plants have slotflags they can now be equipped

* now you can have more than one slot_flag
2017-01-06 09:54:50 +13:00
Mervill
646d4bc8ee hardsuits, amour and other suits that cover the feet now protect against glass shards 2017-01-05 02:48:40 -08:00
oranges
f21b077adc Merge pull request #22698 from ChangelingRain/supermattercount
The supermatter now has a ghost-visible damage display
2017-01-05 19:09:28 +13:00
CPTANT
a60172ecf5 Rebalances matter cartridge cost (#22687)
* fixes blocks being applied twice

* revert

* Rebalances matter cartridge cost to prevent material duplication
2017-01-05 19:07:08 +13:00
Haevacht
2e93eeea51 Offhand backup plan (#22679)
* no longer asks the offhand to neatly unwield

should fix the issues??

* re-callbacks the sky bulge

* revert the qdel
2017-01-05 19:05:25 +13:00
XDTM
397f440e10 Fixes pockets 2017-01-04 15:18:16 +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
Mervill
422d869a40 [s] Fixes spraycans being silent (#22682)
* The regular spraycan makes noise again, also spraying someone in the face is loud

* There are more then 80 columns in the world today, friends
2017-01-04 19:42:39 +13:00
Joan Lung
c0bdb982f3 Merge pull request #22671 from Mervill/owo_whats_this
Makes parcel descriptions less confusing
2017-01-03 22:25:29 -05: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
a4dfe50f75 The supermatter now has a ghost-visible damage display 2017-01-03 17:02:28 -05: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
Mervill
49d51da5c5 adds weightclass2text(), updates package names based on item size 2017-01-02 18:02:40 -08:00
Cruix
ba1ff745b1 Fixed being able to pull lockers out of wrapping paper (#22648) 2017-01-02 16:58:01 -05:00
Cheridan
d92c8aaa8d Merge pull request #22635 from Mervill/bibleupdate
Basic canUseTopic check for the bible, removed dead code
2017-01-02 08:18:42 -06:00
Kyle Spier-Swenson
280dbe20c3 [Ready] SSthrowing + callbacks! (#22476)
* SSthrowing + callbacks!
Throwing is now a subsystem.
It's low priority, but is a ticker subsystem so is ran before most other subsystems.
To allow for shit to run after the throw finishes, throwing now supports a callback.
A callback datum system was created, conversion of addtimer is planned for another PR.
Throwing now has a limit of 2048 turfs (was 600)
Throwing now ticks every world.tick, and properly converts the speed arg from 1ds to what ever tick_lag is.
Throwing now properly accounts for missed ticks.
Throwing no longer uses sleep.
Throwing should no longer lag since it's not filling the sleep queue up

* Smoother tentacles

* Some improvements

* Missed a spot.

* Makes shit quicker.
Inlines the thrownthing.tick() proc.
Raises missed ticks value
Lowers max dist value
Inlines the two sister overrides for /atom/movable/Moved() because that just seemed like a waste

* >PRs open that use procs i'm removing.

* STOP THE PRESSES!

* throw_at now runs the first throw tick() immediately
This will help some with throwing while running.

* Item throwing now imparts the momentum of the user throwing.

(ie, running in the direction you are throwing makes you throw faster, running away from the direction you are throwing makes you throw the item slower)

* Moves throwing momentum from carbon/throw_item to movable/throw_at.
There are other things that cause a mob to "throw" an item, I figured we keep this universal since thrower is already an arg.

* Explosions throw shit faster.
This was stupid, "Hey, lets set the item's throw_speed to 4 so embedding works, but lets make it throw at the base 2 throw speed for no reason."

* Fixes explosion embedding.
This also acts as a nice example of how to override a callback in an override of throw_at properly.
2017-01-02 20:08:03 +11:00
Mervill
0c1fce9987 organize the code a bit better 2017-01-01 06:07:49 -08:00