Commit Graph

125 Commits

Author SHA1 Message Date
Ian Turk
7460f2c5b8 Replaced flags with flags_1 2017-08-16 13:01:15 -06:00
Jordan Brown
af4d9a85c9 Repaths /obj/item/weapon to /obj/item (#29929) 2017-08-16 10:38:51 -03:00
Jordan Brown
dce49b6caf Adds defines for mouse_opacity 2017-08-14 11:18:22 -04:00
shizcalev
99624b8e74 further spellchecking 2017-07-31 23:09:08 -04:00
ShizCalev
45d3d52af7 Made some object lists less terrible to read (#29304)
* spaces

* more spaces

* last ones
2017-07-18 10:44:29 -04:00
Joan Lung
deae811756 Unconscious and Knockdown are now status effects (#28696)
* Unconscious and Knockdown are now status effects

* Fixes #28628

* fixes borgs

* the terrifying second argument

* Much better
2017-06-23 12:00:49 -04:00
Joan Lung
58c054acb5 Stun is now a status effect (#28654)
* Stun is now a status effect

* I'D RATHER NOT

* smart

* very smart

* pideyview

* small fixes

* slight fix
2017-06-22 10:50:46 +10:00
Joan Lung
2672d88800 Renames stun effects and changes stun input values as preliminary work for changing stuns to status effects (#28524) 2017-06-18 23:03:51 -03:00
coiax
b633cd6ba2 Moves languages to a holder datum, gives mind its own language holder (#26776)
* Ghosts now have a language menu

🆑 coiax
add: Ghosts can now modify their own understood languages with the
language menu.
/🆑

- Language menu is now on /atom/movable, and can be opened by any atom
with the `open_language_menu` proc.
- Used for testing, and simulating what various station members hear.

* Language holders, I

* Language holder, II

* Dos line endings

* MIND LANGUAGES

* Fixes some mobs not having language holders in their minds

* Shadow languages

* How did you lose the holder?

* Mob level IC->Open Language Menu verb

* Gives draconic to silicons

* Lazy breeki

* Use of pre-initialized global lists for languages

* Fixes bugs with lazy holders
2017-05-05 15:12:27 +02:00
Robustin
498559db33 Cult Construct Non-Balance Update (#26598)
* Adds Construct HUD

* Update _defines.dm

* Construct health icons

* Update tgstation.dme

* Update constructs.dm

* construct glow

* Nightvision

* Add files via upload

* Update constructs.dm

* HUD fix

* updated icon names

* Update screen_objects.dm

* here goes nothing

* Throwing code at the wall and seeing what sticks

* Update constructs.dm

* Update constructs.dm

* Update constructs.dm

* wew

* empty space memes

* Update constructs.dm

* Update and rename constructs.dm to construct.dm

* Update construct.dm

* Filename memes

* Update constructs.dm

* update

* Finished and tested
2017-04-29 14:10:41 +12:00
Cyberboss
5ace376e4a Initialize Refactor (#25981)
Shouldn't break anything, stops warning spam, logs errors qdel style at the end of the game.

Initialize now expects a hint to be returned, one of:
INITIALIZE_HINT_NORMAL - Does nothing, returned by the root proc
INITIALIZE_HINT_LATELOAD - Call atom/proc/LateInitialize
INITIALIZE_HINT_QDEL - Calls qdel on the atom

LateInitialize currently defaults to the old re-calling behavior so there should be no issues with that.
Things that didn't return a hint or fucked up somehow will be logged less loudly than they were before

No more world start warnings!
2017-04-27 09:02:29 +12: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
coiax
7554b5f454 Language datums; removes the talk wheel (#25333)
* Initial burst of languages

* Scratchings of beginnings

* Code review I

* Compilation!

* You can now understand your own speech

* Fixes whispering

* Gets typecaches working again

* Remie's `PASS`ing

* Back to pass() to stop the compiler whining

* Why can't drones check their languages

* Everyone speaks how they should

* Removes world string debug stuff

* Currently failing to massage radio code into working

* The radio transmits the languages!

* ,0 to talk common

* Replaces speech wheel with language menu

* Observers can speak all languages

* pAIs now speak languages FOREVER

* New action button for language menu

* pAIs have an action button to open their language menu

* AIs can talk and all that

* AIs have a language menu button

* Fixes supermatter making strange noises

* Fixes AI holopads

* Fixes request consoles

* Fixes bots making strange sounds

* Meaningless MMI change

* Some caching of datums

* Brains in MMIs speak common

* Ratvarian AIs can only speak Ratvarian

* Tables can speak common, apparently

* Removes var in args

* Fixes the (AI Eye) problem

Thanks to Shadowmobile for their help with this one.

* Fixes tape recorders

* Fixes humans being able to speak in languages they did not know

* Adds some new posibrain names

Honk.

* The voice analyzer replies in the language you spoke to it

* Gives swarmers only swarmer language

* `initial_languages` var.

* OMNITONGUE, clockwork restrictions

* Fixes barmaid and bardrone language abilities

* Code review I

* Omnitongue correction

* Code review II

* Removes force_compose var
2017-04-02 21:03:40 +02:00
Cyberboss
db2d9c6e5d Map splash transition will no longer be blank (#25671) 2017-04-01 19:39:32 -03:00
Cyberboss
7ad4aa7a19 Improve SStitle. No delay icon loading (#25541) 2017-03-28 15:40:37 -03:00
AnturK
e607208a37 Fixes ghosthands (#25021) 2017-03-13 22:05:46 +13:00
Lzimann
5a618297ce Replaces the default output with the to_chat wrapper. 2017-03-10 01:32:05 -03:00
Cyberboss
1bbc640afe Runtime Dynamic Station Loading (#24171)
* Dynamic map loading prototype

* Get the title screen working

* Fixes the random pod bugs

* map configs

* Add back the asteroid

* Ignore the rotate file

* Fix some shit

* More shit fixes

* Babby's first json

* Cyberboss confirmed shitcoder

* Makes map rotation great again

* Moves the map defines

* Delete tgstation2.dm

* Convert runtimestation

* Convert PubbyStation

* Convert OmegaStation

* Convert Metastation

* Convert Delta Station

* Lol file extensions

* Reee line endings

* Take out the trash

* Fix loadallmaps.dm

* Deltaassssssstation?

* Fix travis

* Did I ASK you to change the line endings?

* Remove votable maps

* Cleanup

* Previous config. Load configs in New. Fix splash

* Fix this

* More generic minetype

* STOP TOUCHING THE LINE ENDINGS!!!

* Add some flexibility to /obj/screen/splash

* Fix the shit

* Update gitignore

* Smooth transition from last map

* Better check

* Missed this map rotate check

* Remove these checks too

* Prep for a future request by @kevinz000

* Fix z2 line endings

* Solution for custom .dms

* Rename some things, trim some fat

* Fixes default map_config

* Remove stale comment

* Delete the previous config after loading

* Don't try to open a non-existent file

* Delete the old rotator script

* And references to it

* Line endings

* More line endings

* Del checks from when m-config may have not existed

* LINE ENDINGS

* Update the default map config

* Map load error checking for what it's worth

* Small cleanup

* For case sensitive

* File systems

* Strip maprotate stuff from build script

* Spruce up the _maps tree. Compile some empty space

* Make travis simpler

* LINEARU ENDARU!!!

* tgstation TWO!!!

* Lowercase mine type

* Dummy dm's for testmerging

* Fixes job ordering

* If ghosts wanna watch the map load so be it

* Let them know what's going on

* Fixes z-transitions

* Optimize z expansion further

* Remove this old var

* Fix wiznerd teleportation

* Rmove butt

* Does the thing

* Moved temp configs to the data dir

* Un-touch gitignore

* Forgot templates.dm

* Forgot to include the includer

* Fair enough

* SILENCE IMBECILE!

* @Cyberboss still a fuckboi

* Speed things up a bit

* Fix a potential bug with the error message

* Whatever
2017-03-07 10:45:31 +13:00
Incoming5643
070cfc603f Allows easy hosting of server side title screens [Ready] (#24563)
* Creates a system to allow server owners to place and maintain their own title screens seperately from the codebase and allow for randomly chosen titles screens.

WIP

* Essentially a full rewrite. System actually works now!

* updates the licensing language to match the rewrite

* System now works on a folder system. Just place images into the images folder and the game does the rest!

* forgot to add some new files

* Removes now depreciated define TITLESCREEN from map files
2017-03-03 16:16:28 -06:00
Cyberboss
cc72c48247 Fix a potential runtime with the splashscreen obj 2017-02-27 16:01:19 -05:00
Joan Lung
0ad469bcdb Merge pull request #24152 from Cyberboss/juicier
Adds a round end animation
2017-02-17 21:02:22 -05:00
Cyberboss
64d0521859 Adds a round end animation 2017-02-16 10:05:51 -05:00
Cyberboss
2a0b40bc34 Possibly fixes huds failing to GC 2017-02-16 10:01:38 -05:00
Cyberboss
8862ea4803 Fixes description text for screen objects (#23542) 2017-02-02 11:31:01 +01:00
oranges
de19dfc066 Merge pull request #23382 from Core0verload/intents_for_animals
Adds support for simple mobs changing intents
2017-01-31 09:13:19 +13:00
c0
f947945e94 Extends easy inventory clicking to active hands 2017-01-28 14:04:44 +03:00
c0
6f2ca062f1 Refactors action intent selectors, adds support for simple mobs having more than one intent 2017-01-27 14:15:56 +03:00
c0
2e6759065a Removes two buttons from /inventory/ path 2017-01-27 13:20:22 +03:00
c0
0904446ab3 Clicking filled item slot now clicks the item in it 2017-01-27 12:12:57 +03:00
AnturK
a6dbfd5cd9 Fixes orbiting click catcher. (#23129)
* Fixes #13745

* Better solution

* Arguments culling

* If something will call this using weird convention i blame you
2017-01-21 19:03:54 -05:00
Mervill
9d7af47ed3 Intents can be cycled forward and backwards with hotkeys again (#22201)
* intents can be cycled foward and backwards with hotkeys again

* fix
2016-12-16 10:56:58 +13:00
Mervill
3f68bd7202 Merge branch 'master' into a_intent
Conflicts:
	code/modules/mob/mob_defines.dm
2016-12-04 00:38:37 -08:00
Mervill
481cc07dcf m_intent now uses defines 2016-12-03 00:25:44 -08:00
Mervill
d4a49d509d added INTENT_NEXT 2016-12-03 00:08:55 -08:00
Mervill
0972f78800 a_intent now uses defines 2016-12-02 22:27:30 -08:00
Cyberboss
e67133b606 Hotkeys for target selection and run/walk (#21039)
* About time someone did this

* also this

* One almost got away

* From '`' to 'B'

* Mercy kill this PR pls

* Help message

* You could've told me how that took forever

* Update help
2016-10-26 18:57:38 +13:00
Joan Lung
d017a5e4ff Clockwork Marauders now have a HUD (#21124)
* Clockwork Marauders now have a HUD

* don't say a word
2016-10-24 22:58:26 +13:00
MrPerson
5047dd7145 Plane master handling + new chemical Rotatium (#20707)
* 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
2016-10-18 11:41:23 +02: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
phil235
143e4ce172 Made the wheel system generic, so future coders can make different wheel types.
I gave the talk wheel to aliens, monkeys and cyborgs.
2016-09-16 14:45:05 +02:00
phil235
37d1ea6108 Make sure talk_wheel_icon var is properly deleted when hud is deleted.
Add a hotkey for the talk wheel: H (hotkey mode) and Ctrl+H.
Fixes not being able to use the wheel and talk button while stunned.
2016-09-13 15:22:41 +02:00
phil235
76f6ef21c3 Males the talk wheel more fleshed out. 2016-09-13 01:07:52 +02:00
phil235
65bd7d1f4d First draft of the talk wheel concept. 2016-09-12 19:17:40 +02:00
Remie Richards
00738bd2a3 More than 2 hands!? WHAAAAAAT 2016-09-02 16:10:16 +01:00
KorPhaeron
43a16713f1 Blueprints for everyone 2016-08-11 04:04:16 -05:00
Shadowlight213
3d13cc945b Merge branch 'master' of https://github.com/tgstation/tgstation into observehud 2016-07-02 12:33:33 -07:00
Joan Lung
c801f9a9c9 Replaces umbras with revenants (#19059)
Umbras have been removed.
Revenants have been readded, though they are now vulnerable to salt piles.
2016-07-03 01:33:52 +12:00
Shadowlight213
892fcf3393 Finishes up hud stuff.
Remaining issue: hide action buttons action button changing icon for both.
Also action buttons arent shown for observer, but the button is shifted over.
2016-06-28 20:31:45 -07:00
Shadowlight213
b177b4c7b7 Merge branch 'master' of https://github.com/tgstation/tgstation into observehud 2016-06-28 14:32:01 -07:00