Scale()s the icon when range is below 16, if it's above 16, scales the icon to 16 and transforms the rest of the way.
This replaces the other method of creating one click catcher image per tile in the range of the users view, which was pretty memory hungry and inefficient. A single icon operation while the view range changes should still be pretty performant and require less memory bookkeeping.l
This ensures it works when the users view range changes, but does not result in a loss of precision for view ranges up to 16 when moving the mouse (it triggers per pixel which simply get larger when transformed)
fixes#29342
Click catcher now supports mousemove/mousedrag. Basically, mouse location can now be captured even if the user isn't mousing over a visible location
Added procs to allow for projectiles to be fired with just an angle for pixel projectiles, instead of requiring a target turf and pixel x/y
Added procs to get angle of user's mouse from their viewpoint (Time to rework gang machine guns again!)
Beam rifles now have different zoom modes
Free directional zooms out and tracks the angle of your mouse from the center of the screen. However, you can't target with very good accuracy on this (Shots can't be properly aimed on non dense objects/lying down mobs.)
Locked directional zooms like free directional but doesn't automatically turn if your aim changes.
Center view, just increases your view in all directions (2x weaker)
No zoom mode, in which you just retain your normal view.
You can select beam rifle zooming rates to be instant or stepped.
Stepped zooming rates zoom out 5 tiles per second. This will likely help with people not being able to use it without lagging because their computers aren't as beefy!
Beam rifles no longer require zoom to be fired
Beam rifle aiming beams now instantly update instead of on process
Beam rifle aiming beams are now one object instead of 150. This'll help with the lag caused by it during gameplay that I've observed.
Angular penalty reduced by 0.1 for a nice even number.
Instances of client.view = have been replaced with client.change_view() as that'll properly update the click catcher
Hopefully shooting yourself in the face when you hit a blob tile or whatnot is fixed with the new and improved code..
* Reorganizes martial arts and stores them in the MIND.
* Moves martial arts to mind.
* Added more sanity checks
* MORE sanity checks!
* Fixes the checks.
* New commands!
* helper
* replacements
* regexes left and right
* someone might actually refer to medical doctors with the full name
* Cooldowns first
Fixes human species grabs not checking for adjacency before grabbing
when using the ctrl click hotkey.
Moves the code into the click code and not down in the martial arts code
* Plane master handling + new chemical Rotatium
A whole system to create, store, and access screen master objects from the hud. In case anybody actually wants to do anything relevant with them. Which will probably be me but whatever.
Moves things out to some planes that make sense.
click catcher -99
game 0
lighting 15
fullscreen 18
HUD 19
above HUD 20
Rotatium is more of a demonstration than something I really really love, but it is kinda neat so here you go. It rocks the game plane and lighting planes back and forth and also does light toxin damage. The longer it effects you, the stronger the rocking gets.
No pictures right now, I'll get some later. Sorry.
* Pay no attention to the commit behind the curtain
* Updates travis to 1346, the stable version for 510 for linux
This PR ports pockets (from Animus Green) and adds them to some clothing.
Shoes that support storing items now use pockets system.
Some hats have 1 small pocket.
Detective's hat spawns with a flask in it.
Clown's mask has a single tiny top-secret pocket. Honk!
This PR also includes two or three path fixes. It also fixes internal storages (pockets, storage implant) having less "max depth" than external ones.
Two mobs can no longer pull the same mob at the same time. Pulling someone break any other pull/grab from other mob on that person.
The grab item is gone entirely.
You can now only grab one mob at a time, instead of two (one for each hand).
Being aggressively grabbed or more now counts as being restrained (like handcuffed). A neck grab or more makes you lie down and prevents you from getting up until the grab is broken.
Fixes movement when moving with a grabbed person.
Fixes movement when moving a pulled person around you diagonally.
Fixes neckgrab moving the victim on your turf even if the turf is dense.
Moves everything on a 15+ layer to a plane. So now you get screen catcher (-99, was already on a plane), lighting (15), effects that ignore lighting (16), fullscreen UI effects (18), screen objects used to build the UI (19), actual equipment in the UI slots (20), and everything else (0).
Also created a file to contain plane and layer defines for hopeful eventual use.
Hopefully this doesn't change anything now but does enable some nifty new features in the future.