* 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.
* Fixed being able to hold twohanded-required items in one hand
Fixed dualsabers changing their weight_class and hitsound when unsuccessfully wielded
* Fixed ctf flags being unpickupable
The offhand was deleted in unwield which can be called by dropped, which
can be called by unequip, which can be called by Destroy
By explicitly using wield as a guard, we avoid this
* makes these checks more flexable
* oh hai mark
* praise jesus
* magicaly a better understanding of how to structure if checks lets me cut 2 lines
* wew
* spellcheck
* i shoudent code drunk
* weeeeew
* llllllaaaaaadddddd
* madcusbad
* i realy should learn desktop git
* wew
* Im just so sorry
* because we can't be having the power of atheism melting clockcult.
* Sky Bulge Commit mk2
WORK THIS TIME.
* Indentation.
* Jordbord's suggestions
Incorporated. The bone spear line was also doubletabbed I was set up!
* FUCKING INDENTATION
* the flan update
they don't exist in world but here have a mob
* we fireflans now
also isliving is in now, just gotta actually map a thing
* the tomb update
it's bigger now
* .gitignore revert
* workpls
* Revert ".gitignore revert"
This reverts commit 1fefd34fc7c0dbc8f1f353a95e53665e03ba75cf.
* workthistime
* Revert "workthistime"
This reverts commit 214509d5abda941c470708431536ccd715334e8e.
* well it's the closest gitignore fix so far
* fix dme change
will need to be loaded for the map part to work though
* gitignorerevert take 43
* jordbord fix mk 2
* includes flan.dm in the .dme
* Curator Items
* Spawns in his bookbag because where else would this stuff go
* Revert "Spawns in his bookbag because where else would this stuff go"
This reverts commit c3a8613b01a8ac99b0d44e7eeb2e69fa8ca5801c.
* [WIP] Adds multiple upgrades for Medical cyborgs
🆑 coiax
add: Adds upgrades for the medical cyborg!
add: The Hypospray Expanded Synthesiser that adds chemicals to treat
blindness, deafness, brain damage, genetic corruption and drug abuse.
add: The Hypospray High-Strength Synthesiser, containing stronger
versions of drugs to treat brute, burn, oxyloss and toxic damage.
add: The Piercing Hypospray (also applicable to the Standard and
Peacekeeper borgs) that allows a hypospray to pierce thick clothing and
hardsuits.
add: The Defibrillator, giving the medical cyborg an onboard
defibrillator.
/🆑
- [ ] Price the material cost of the boards appropriately
- [ ] Get the defib upgrade working
* Got the defib working
* Adjusted research and costing levels
* Missed a close paren
* 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.
* Advanced Mop can now make its own water
The Advanced Mop can now produce its own water at a rate of 1 unit per
process().
The advanced mop now has a switch to toggle wetting itself.
* Tweaks
Uses the proper return ..()
Rearranged the text a little.