Commit Graph

78 Commits

Author SHA1 Message Date
SkyratBot
05565c1b9c [MIRROR] Various Paper bug fixes (#302)
* Various Paper bug fixes (#52470)

* Ugh too tired fix latter

* Ok think its fixed, still need to make the stamp working

* Major fixes done, but still the ui dosn't pop up once you examine the door

* Ok you can read doors now, that was annoying.

Ok we done

* Update paper.dm

oh fix

* I have DONE it! Alright

* Miner fixes on order

* Update tgui.bundle.js

* Update code/modules/paperwork/paper.dm

Sure

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/paperwork/paper.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Alright some fixes

* Update tgstation.dme

* Revert "Update tgstation.dme"

This reverts commit 3eaa48d9fcfa2645663420165c39643c3ae5d939.

* Update tgui.bundle.js

* Update code/datums/components/honkspam.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/datums/components/honkspam.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/paperwork/paper.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Update code/modules/paperwork/paper.dm

Co-authored-by: Rohesie <rohesie@gmail.com>

* Bahhh...me..so..tired

* pointless uistate gooone

* Update tgui.bundle.js

Co-authored-by: Rohesie <rohesie@gmail.com>

* Various Paper bug fixes

Co-authored-by: WarlockD <warlockd@gmail.com>
Co-authored-by: Rohesie <rohesie@gmail.com>
2020-08-12 11:29:35 +01:00
jdawg1290
62676e72a8 Force LF line endings with gitattributes and convert repo (#52266)
Co-authored-by: Aleksej Komarov <stylemistake@gmail.com>
2020-07-16 03:02:40 +03:00
WarlockD
1d0cc0c715 Papers Please! Now with Markup...again! (#51534)
* Initial update

* tgui ofcourse

* Small fixes

* More lint fix

* Updated to support signatures and adding to paper

* Sign and adding to paper work, need to tune it a bit though

* Ok, signatures and adding work, still working on stamps

* Stamps now, fix rotate and cleanup tommow

* Alrighty!  Lets try for some testing!

* Stupid travis

* annnd the bundle

* Minor fixes

* DONE.  Still have some code cleanup, but all the major features work now

* Requested changes cleaned up formating

* Dammmn you bundle!

* Fixed the preview issue

* Updated bundle

* Ok, some more fixes and clean up

* Ugh damn you tgui bundle

* Update tgui.bundle.js
2020-06-17 11:55:58 -04:00
nemvar
6ef421be42 Renames a few variables. Also reorders icon fallback order again. (#51060)
* Renames a few variables. Also reorders fallback order again.
Renames item_state to inhand_icon_state
Renames mob_overlay_icon to worn_icon
Renames mob_overlay_state to worn_icon_state
worn_icon_state/mob_overlay_state now never gets used for inhands.

* Fixes some comments

* Fixes map issue

* Restart lints

* Properly resolves conflicts
2020-05-25 06:47:19 +02:00
MrPerson
26093e5ac2 Further update_icon splitup (#48784)
* Further update_icon splitup

After this there'll be just under 100 old update_icon() calls that need fixing.

* Thanks Travis
2020-01-22 10:18:05 -05:00
Firecage
ff42a1590b Ports carbon paper from Bay. (#47691)
* Ports carbon paper.

* Can't fold stacked carbon paper into paperplane.

* Changes some update_icon()'s into update_icon_state()'s

* Does as Action asked.

* Return is returned to the box from whence it came.
2019-11-14 02:56:35 -08:00
nemvar
dc783795db Renames is_hot and is_sharp to get_temperature and get_sharpness (#46680) 2019-09-23 14:02:59 -07:00
vuonojenmustaturska
8ddc9677c7 examine-code refactor (#44636)
* 1/4 done? maybe?

* more

* stuff

* incremental stuff

* stuff

* stuff & things

* mostly done but not yet

* stuffing

* stuffing 2: electric boogaloo

* Git Commit and the Kingdom of the Crystal Skull

* make it actually compile

* found more stuff

* fixes

* fix AI laws appearing out of order

* fix windows

* should be the remaining stuff

* this time for real

* i guess it should compile too

* fix sechuds
2019-06-19 22:07:57 +02:00
kevinz000
3e7184c975 Combat/Stun (slip) overhaul staging, mobility flags, adds crawling (#39967)
Aiming to implement the framework oranges has detailed in https://tgstation13.org/phpBB/viewtopic.php?f=10&t=19102
Moves canmove to a bitflag in a new variable called mobility_flags, that will allow finer grain control of what someone can do codewise, for example, letting them move but not stand up, or stand up but not move.

Adds Immobilize()d status effect that freezes movement but does not prevent anything else.
Adds Paralyze()d which is oldstun "You can't do anything at all and knock down).
Stun() will now prevent any item/UI usage and movement (which is similar to before).
Knockdown() will now only knockdown without preventing item usage/movement.
People knocked down will be able to crawl at softcrit-speeds
Refactors some /mob variables and procs to /mob/living.
update_canmove() refactored to update_mobility() and will handle mobility_flags instead of the removed canmove

cl
rscadd: Crawling is now possible if you are down but not stunned. Obviously, you will be slower.
/cl
Refactors are done. I'd rather get this merged faster than try to fine tune stuff like slips. The most obvious gameplay effect this pr has will be crawling, and I believe I made tiny tweaks but I can't find it Anything I missed or weird behavior should be reported.
2018-10-11 11:22:21 +13:00
Davidj361
232f788bb9 Fixed paperbin dropping and fingerprints (#36788)
* Removed parent call to stop the paperbin from dropping from being carried when getting a pen or paper.

* Found a better fix

* Better operator

* Fixed fingerprints not being created upon paper bin interaction

* Review change
2018-04-09 21:13:35 +02:00
kevinz000
f300a5c155 Interaction/Attack Hand Refactor (#36405) 2018-03-23 11:20:54 +01:00
BordListian
0a3b27474b - Deletes a redundant double proc definition 2018-02-18 13:56:52 +01:00
vuonojenmustaturska
a162837faf Replaces a bunch of loc assignments with forcemoves and moves to nullspace (#33465)
* big batch of loc assignments

* Update emergency.dm

* Update spiders.dm

* Update parrot.dm

* Update ripley.dm

* Update firealarm.dm

* seems to work

* this maybe works?

* brainmemes, again

* stuff

* fix brainmob, camera runtimes
2017-12-13 20:56:39 +01:00
vuonojenmustaturska
d55aa05c4b It's a time to stop warning about paper bins eating pens 2017-10-20 01:35:07 +03:00
Jordan Brown
af4d9a85c9 Repaths /obj/item/weapon to /obj/item (#29929) 2017-08-16 10:38:51 -03:00
ShizCalev
d525b18d8d Completes major inhand split project (#29574)
* Completes split project

* More work on it. Should be more or less finished
2017-07-29 16:47:37 -03:00
shizcalev
df75d76c7e fix
fixes #28653
2017-06-21 00:12:31 -04:00
Expletive
1860e1a2ea Paper frames, but with new sprites. (#28452)
* Paper frames, take two

* With entirely new sprites

* and basemap

* no directional doors also smoothing

* changes requested

* woops

* deconstruct -> Destroy
2017-06-18 10:45:35 -04:00
Really-Good-Soda-Flavor
a811bb3269 Fixes paper bins and moves paper to initialize (#27531) 2017-05-23 00:50:30 -03:00
MrPerson
ff3f84ab81 Replaces /image with /mutable_appearance, where appropriate (#26518)
In cases where you're creating an image to use as an overlay, it makes more sense to use a mutable_appearance if you can. The image will create a static appearance for not just the image but also each intermediate step if you change vars along the way. The mutable appearance avoids this unnecessary and expensive process. The only situation that requires an image instead of a mutable_appearance is if the overlay is supposed to be directional. MA's ignore direction while images don't. I dunno why, probably another BYOND-ism.

I added a convenience function, mutable_appearance(), designed to emulate image(). Also went ahead and set the default plane of /mutable_appearance to FLOAT_PLANE because it's fucking 0 by default.

Several overlays that were image() calls were changed to just text strings when I could. overlays += "string" has the same result as overlays += image(icon, "string") and saves a proc call.
2017-04-25 12:15:16 +02:00
Joan Lung
dc0e007a23 A bunch of Initialize()s now have return values (#26464) 2017-04-25 10:51:40 +02:00
Cyberboss
7c50d3fb8f Clean up some paper bin warnings (#25987)
* Cerestation paperbins

* Fix more
2017-04-10 10:41:14 +12:00
Cyberboss
73fa1e61f8 SSevent -> SSevents 2017-03-22 11:26:01 -04:00
Lzimann
5a618297ce Replaces the default output with the to_chat wrapper. 2017-03-10 01:32:05 -03:00
Cyberboss
d27899ce64 Unequip refactor fix pack (#24040)
* Fixes drag drop deletion

* Fix it for clothing as well

* Do it properly

* Various other incap checks I noticed from the unequip refactor

* Time to generalize this shitty shit

* PADDLING!!!

* A whole bunch of ree
2017-02-14 08:52:56 +01:00
bgobandit
3573b0a74f Adds construction paper (#23576)
* Adds construction paper

* metastation too

* honk honk and such
2017-02-03 00:33:34 +13: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
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
Mervill
309adf96c3 Pens can now be placed on top of paper bins :shock: 🚀 (#22195)
* pens can now be placed on top of paper bins :shock: 🚀

* refactor

* fix
2016-12-18 19:49:03 +13:00
Mervill
09ea5ad2e5 w_class now uses defines 2016-12-01 21:33:14 -08:00
phil235
5f835bfc26 Obj damaging system, acid damage, and fire damage refactor (WIP) (#20793)
Please refer to #20867 and #20870 for a easier view of the changes. Those two PRs show all meaningful changes (hopefully) and doesn't show the files changed with just 3 lines changed.

This PR does three things:

    It makes all children of /obj/ use the same damage system.
    Previously to make your new machine/structure be destroyable you needed to give it a var/health, and its own version of many damage related proc such as bullet_act(), take_damage(), attacked_by(), attack_animal(), attack_hulk(), ex_act(), etc... But now, all /obj/ use the same version of those procs at the /obj/ level in code/game/obj_defense.dm. All these obj share the same necessary vars: obj_integrity (health), max_integrity, integrity_failure (optional, below that health level failure happens), and the armor list var which was previously only for items, as well as the resistance_flags bitfield. When you want your new object to be destroyable, you only have to give it a value for those vars and maybe override one proc if you want a special behavior but that's it. This reorganization removes a lot of copypasta (most bullet_act() version for each obj were nearly identical). Two new elements are added to the armor list var: fire and acid armor values.
    How much damage an obj take depends on the armor value for each damage category. But some objects are INDESTRUCTIBLE and simply never take any damage no matter the type.
    The armor categories are:
    -melee(punches, item attacks, xeno/animal/hulk attacks, blob attacks, thrown weapons)
    -bullet
    -laser
    -energy (used by projectiles like ionrifle, taser, and also by EMPs)
    -bio (unused for this, only here because clothes use them when worn)
    -rad (same)
    -bomb (self-explanatory)
    -fire (for fire damage, not for heat damage though)
    -acid
    For machines and structures, when their health reaches zero the object is not just deleted but gets somewhat forcedeconstructed (the proc used is shared with the actual deconstruction system) which can drops things. To not frustrates players most of these objects drop most of the elements necessary to rebuild them (think window dropping shards). Machines drop a machine frame and all components for example (but the frame can then be itself smashed to pieces).
    For clothes, when they are damaged, they get a "damaged" overlay, which can also be seen when worn, similar to the "bloody" overlay.

    It refactors acid. See #20537.
    Some objects are ACID_PROOF and take no damage from acid, while others take varying amounts
    of damage depending on their acid armor value. Some objects are even UNACIDABLE, no acid effect can even land on them. Acid on objects can be washed off using water.

    It changes some aspect of damage from fires.
    All /obj/ can now take fire damage and be flammable, instead of just items. And instead of having just FLAMMABLE objs that become ON_FIRE as soon as some fire touch them (paper), we now have objects that are non flammable but do take damage from fire and become ashes if their health reaches zero (only for items). The damage taken varies depending on the obj's fire armor value and total health. There's also still obj and items that are FIRE_PROOF (although some might still be melted by lava if they're not LAVA_PROOF).
    When a mob is on fire, its clothes now take fire damage and can turn to ashes. Similarly, when a mob takes melee damages, its clothes gets damaged a bit and can turn to shreds. You can repair clothes with cloth that is produceable by botany's biogenerator.

    It also does many minor things:
        Clicking a structure/machine with an item on help intent never results in an attack (so you don't destroy a structure while trying to figure out which tool to use).
        I moved a lot of objects away from /obj/effect, it should only be used for visual effects, decals and stuff, not for things you can hit and destroy.
        I tweaked a bit how clothes shredding from bombs work.
        I made a machine or structure un/anchorable with the wrench, I don't remember which object...
        Since I changed the meaning of the FIRE_PROOF bitflag to actually mean fire immune, I'm buffing the slime extract that you apply on items to make them fire proof. well now they're really 100% fire proof!
        animals with environment_smash = 1 no longer one-hit destroy tables and stuff, we give them a decent obj_damage value so they can destroy most obj relatively fast depending on the animal.
        Probably a million things I forgot.

If you want to know how the damage system works all you need is the three obj vars "obj_integrity", "max_integrity", "integrity_failure", as well as the armor list var and the resistance_flags bitfield, and read the file obj_defense.dm
2016-10-10 11:14:59 +13:00
phil235
2d2975f783 Some preliminary changes before the damage refactor PR. The changes here do absolutely nothing gamewise.
This just adds some vars that the refactor will use. Putting this in a separate PR prevent the damage refactor PR from becoming too big (number of files changed) and hard to read and review.

Introduces the resistance_flags bitflag that replaces unacidable and burn_state.
Moves the armor var from item to /obj level and gives specific armor values to many objects, the armor list also gets two new armor types: fire and acid, which will be used in the refactor. the new fire and acid armor values are given to plenty of items.
2016-09-27 22:33:08 +02:00
Remie Richards
00738bd2a3 More than 2 hands!? WHAAAAAAT 2016-09-02 16:10:16 +01:00
coiax
6449b65d30 Adds fireplaces, eswords are hot, cardboard is flammable (#19118)
Makes needed improvements to proposed fireplaces

- Fireplaces now use world.timer
- Fireplaces no longer prompt input() for inserting logs, it just
takes as many logs as possible
- Paper and paper bins can be thrown on the fire, thirty paper is worth
one log of burn time.
- One log gives 15 seconds of burn time, the fireplace can hold up to 5
minutes of fuel.
- Ignitable items now use a /obj level proc to generate their messages,
currently using this are cigarettes, candles, fireplaces
- The fireplace can be put out with an extinguisher
- Cardboard cutouts are now flammable
- The fireplace is only "warm and cozy" when lit
- Paperbins qdel their stored papers when destroyed (probably did that
already, but no harm in making sure)
- Also removed some returns hanging around

* Added new proc for lighting stuff

- Adds ignition_effect(atom/A, mob/user) to obj/item, which is called
when you're attempting to light things with that object. By default it
does nothing and prevents ignition, but if the object is hot, it returns
a message. May do other things for different stuff.

- Eswords now ignite flammable gasses in their area.

* Fireplace is no longer on fire when not on fire
2016-07-06 10:16:47 +12:00
bgobandit
10d32cd9d4 Fixes/tweaks a lot of typos/descriptions. (#18956) 2016-06-28 22:02:28 +12:00
phil235
b146131a34 Second commits.
This contains the changes to item_attack.dm
Obj/attackby() now follows a similar structure as mob/living/attackby. It calls attack_obj() (like attack() but for obj) which calls attacked_by (just like attack() does)
The use of the NOBLUDGEON flag changes a bit, it is now used to signify the item cannot be used as a melee weapon at all. No attack animation, no attack message. I've given this bitflag to many items that have an afterattack() so as to not both attack and do the special action (among those items: the rcd)

There's also the code changes to attacking machines: attacking any machine now give a proper message and a sound. And with this, I made more machines breakable (using a health var and the very little used BROKEN stat). Most notably, tables can now be attacked when on harm intent and be destroyed.

The newly destroyable machines have a take_damage() proc used by all sorts of attack (weapon, xeno, animal, hulk, mech melee, gun projectile, thrown items).

There's some more stuff in there, see the PR's description and comments.
2016-04-24 20:37:00 +02:00
c0
f71ab62e79 HUD item slots no longer show item placeholders when there are actual items inside 2016-03-22 08:00:38 +03:00
AnturK
3e83932840 Fixes ghosts bureaucracy. 2016-02-26 22:36:48 +01:00
PKPenguin321
6a62aa2116 that oughtta do it 2016-01-25 21:35:00 -08:00
PKPenguin321
050c2a38bb makes paper bins use incapactiated() instead of a massive if()
i can into cleaning code
hopefully this works
2016-01-25 20:34:17 -08:00
KorPhaeron
d8a37204e7 Makes burn_state use defines 2015-12-13 05:36:55 -06:00
Ikarrus
8759f56f6f Squashed Commits 2015-06-27 00:09:16 -06:00
xxalpha
b2e84a0d3c Put drop_item() calls inside ifs. Replaced some drop_item() with unEquip( 2015-06-14 20:11:40 +01:00
Cheridan
6c12887367 Pressure_resistance Tweaks
-Adjusts pressure resistance, which determines how easily things can get pushed around by atmos.
-Most items (handheld stuff) are less resistant, while most larger items (mobs, structures, machinery) are more resistant.
-Removes the cooldown on air pushing stuff, which should make it feel more 'responsive', as opposed to the current push->pause->push->pause effect it does now.
-MAGBOOTS/NOSLIPS NOW PREVENT SPACEWIND PUSHING! !!!
-Adds a little wooshy breeze sound to when you would get pushed
2015-06-03 23:22:25 -05:00
Razharas
e13e6e8601 Merge pull request #9665 from Jordie0608/callingspicyfoodwickeddoesntmakesensetome
Bugfix the anti-ninth
2015-05-29 15:21:51 +03:00
Jordie0608
e82c02744e paerbin clickdown, removed protectstation, rounded ui chem/plasma count, non-mob hivebot beacon 2015-05-27 16:54:13 +10:00
xxalpha
adccdd38e9 Made a proc and fixed other buggy items. 2015-05-19 00:28:15 +01:00
xxalpha
dca4fbbefd Fixed storages contents not updating in some cases. 2015-05-18 23:40:14 +01:00
phil235
be1708483e - Fixed nettle soup recipe says abstract nettle.
- Fixes hostile animals weakening non carbons, and adjusted weakening values 1958.
- fixes being able to drop defib paddle by resting, fix a runtime linked to this.
- can no longer pick card from deck while resting, same for paper bin and bedsheet bin.
- examining extinguisher and atmos watertank nozzle gives you the amount of water remaining.
2015-05-02 01:34:38 +02:00
kingofkosmos
761d31cea0 More visible.message span classes removed. 2015-04-24 21:24:21 +03:00