Commit Graph

134 Commits

Author SHA1 Message Date
Tad Hardesty
b5d0e1e256 Fix mindswap forcibly enabling ambient occlusion 2018-05-19 21:56:28 -07:00
AnturK
52a99c09d6 Uppercase slot defines 2018-04-27 10:38:32 +02:00
Qustinnus
5140cff38c [reviewpls] Adds moodlets to the game - [Please give suggestions for trait additions in comments] (#35475)
Floyd / Qustinnus (Sprites by Ausops, Some moodlets by Ike709)

add: Adds mood, which can be found by clicking on the face icon on your screen.
add: Adds various moodlets which affect your mood. Try eating your favourite food, playing an arcade game, reading a book, or petting a doggo to increase your moo. Also be sure to take care of your hunger on a regular basis, like always.
add: Adds config option to disable/enable mood.
add: Indoor area's now have a beauty var defined by the amount of cleanables in them, (We can later expand this to something like rimworld, where structures could make rooms more beautiful). These also affect mood. (Janitor now has gameplay purpose besides slipping and removing useless decals)
remove: Removes hunger slowdown, replacing it with slowdown by being depressed
imageadd: Icons for mood states and depression states


What this PR is

This PR adds a system that allows player to gain and lose moodlets based on events occuring to, and around them. These events then give the player a mood value based on what it is. For example a hug could give you +1 mood, while being stabbed in the eye with a screwdriver can give -5 mood. All these moodlets together determine the mood of your character which currently affects the following things:

    Movement speed - If you are very sad you move slower. Replacing movement slow from hunger. (hunger now instead affects mood)
    Screen blur - If you are sad you gain an overlay that slightly blurs the screen, increasing in severity as you get sadder.
    Interaction / do after speed - If you are sad or happy your interaction speed with things such as handcuffs is changed. with a 25% longer time if you are sad, or 10% shorter time if you are extremely happy.
    Hunger rate - You gain hunger slower if you are very happy.
2018-03-08 14:15:57 +13:00
ShizCalev
ea1d6b46c1 . = ..() 2018-01-19 14:26:18 -05:00
ShizCalev
eb48a2df2f Fixes showhud runtime 2018-01-19 13:09:21 -05:00
ShizCalev
7d987884e1 Cleans up leftover Hand of God gamemode references (#31326)
* Removes leftover Hand of God gamemode references

* More
2017-10-05 18:16:47 -05:00
Ashe Higgs
08569ecadb You can now control-click action buttons to lock them in place (#29379)
Adds a lock function to action buttons, as well as a preference controlling default behaviour.
2017-07-25 10:05:18 +12:00
kevinz000
b09e519584 Beam Rifle Zooming Rework + Click catcher memes + bunch of other random stuff that players won't use (#28551)
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..
2017-07-17 12:13:03 +12:00
AnturK
c8b67b49e0 Locked inventory slots are now indicated. (#26768) 2017-05-02 08:56:12 -06:00
Kyle Spier-Swenson
11d504e93a Removes hacky see in darkness invisibility bullshit, uses planes. (#25931)
* Removes hacky see in darkness invisibility bullshit, uses planes.

Also removed the use of invisibility for ghosts of others, instead using override images.

Per client lighting visibility now has 4 levels, all on, all off, and two midways, this allows for things to be able to see in the dark while still being able to see what is dark and what has light, ghosts and aliens and other shit can cycle between all 4, other things were given one of the 3 values depending.

* Remove qdel global var search.

* Cleans up code, makes changing lighting/NV level easier.
2017-04-11 21:01:24 +12: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
MrPerson
17af3ad9d3 Fixes observe issues with parallax (#25561)
This fixes #25479 plus a runtime that happens when you observe a mob whose player has ghosted that results in a comically incorrect HUD for the observer.

HUDs are a fucking mess still to the surprise of nobody
2017-03-30 22:08:46 +13:00
MrPerson
589b4ce8ae Revert "Revert "Human nightvision""
This reverts commit c0ef5e59f7.

Conflicts:
	code/_onclick/hud/ghost.dm
	code/_onclick/hud/other_mobs.dm
	code/_onclick/hud/plane_master.dm
	code/modules/lighting/lighting_system.dm
	config/config.txt
2017-03-12 19:04:20 -07:00
Lzimann
5a618297ce Replaces the default output with the to_chat wrapper. 2017-03-10 01:32:05 -03:00
PJB3005
c908ab4e9b @MrPerson did 9/11 2017-02-14 18:53:48 +01:00
PJB3005
8ce6ae2b87 Merge remote-tracking branch 'upstream/master' into rebase-to-vg 2017-02-08 14:30:23 +01:00
PJB3005
9228e01168 I forgot to pull 2017-02-08 14:18:54 +01:00
Joan Lung
55ed19155f Ghosts get plane masters (#23679)
* Ghosts get plane masters
2017-02-04 22:57:33 -02:00
Kyle Spier-Swenson
2243ab6036 [READY]Parallax (#22315)
* Ports Space Parallax from vg/yogs

* KILL ME

* fuck shit

* fixes

* rgfkbjhkefrhjkfrejhkfds

* Parallax, part 2.

* Gotta get these defines in before remie notices!

* DAMN IT! SHE FOUND ONE!

* fixes orbits

* fix orbits take 2

* Fixes some things with parallax

* Refactors parallax shuttle animations.
2016-12-20 21:55:10 -06:00
Mervill
55e8396926 persistant -> persistent (#22072) 2016-12-10 05:44:48 -05:00
oranges
c0ef5e59f7 Revert "Human nightvision" 2016-11-25 15:21:33 +13:00
MrPerson
6dc56abd5e Human nightvision (#21638)
* Human nightvision

Humans can see in the dark a little bit around themselves.
-Add pictures here-

Forces clients onto 510 and suggests clients upgrade to 511 in the default config. The suggestion is still commented out but forcing clients to 510+ is mandatory.

Ghosts and brains now actually render the default HUD instead of skipping the whole process. Dead mobs will show their fullscreens. All of the existing ones will skip rendering to dead mobs to keep the existing behavior of not rendering the brute/blindness screens.
Fixes #17389
Probably fixes #19248 need to test

* Darker human nightvision it is
2016-11-25 13:05:41 +13:00
AnturK
b2ff4cfd33 Makes action buttons use the hud themes. 2016-11-19 14:05:06 +01: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
oranges
4be4672b89 Merge pull request #20488 from phil235/TalkWheel
Talk wheel
2016-09-20 21:42:52 +12: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
443a4501ec Carbon Dismemberment , second attempt. (#20461)
* - I rearranged X_defense.dm mob files, more damage_procs.dm.Here's what's inside:
* X_defense.dm: is for the procs of attacks onto the mob, all the XXX_act() proc (things happening to the mob), as well as protection check and get procs (armor, ear prot, projectile dismemberment)
* damage_procs.dm: actual damage procs like adjustBruteLoss() getfireloss, any proc that handles damaging.

- some bugfixes with gibspawner effects.
- monkey's bodyparts can be dismembered and are used to create its icon.
- brains are no longer carbons.
- all carbon have bodyparts that can be dropped when the mob is gibbed.
- adminspawned bodyparts now have a default icon.
- robotic parts are now a child of bodyparts.
- health analyzer on alien/monkey shows damage on each limb
- added admin option to add/remove bodyparts for all carbon (instead of just remove on humans)
- Fixes keycheck message spam for janicart and all when trying to move.
- Fixes bug with buckling to a scooter while limbless.
- removed arg "hit_zone" in proj's on_hit() because we can already use the def_zone var (where hit_zone got its value)
- Fixes mob not getting any damage when hit by a projectile on their missing limb, despite a hit message shown). carbon/apply_damage() now when we specify a def_zone and the corresponding BP is missing we default to the chest instead of stopping the proc. Consistently with how human/attacked_by() default to its attack to chest if missing limb.
- Fixes mini uzi icon when empty and no mag (typo).
- I renamed and changed a bit check_eye_prot and ear prot
- renamed flash_eyes to flash_act()
- I made a soundbang_act() similar to flash_act but for loud bangs.
- added a gib and dust animation to larva.
- husked monkeys
- no damage overlay for husk or skeleton.
- damage overlay for robotic limb now.
- no damage overlay when organic bodypart husked.
- one handed human with a bloody hand still get a bloody single hand overlay.
- fix admin heal being unable to heal robotic bodyparts.
- slightly touched robotic bodypart sprites (head one pixel too high)
- Fixes 18532 "beheaded husk has hair".
- Fixes 18584 "Ling stasis appearance bug"
- no more eyes or lipstick on husks.
- can remove flashes/wires/cells from robot chest and head with crowbar.
- Fixes not being able to surgically amputate robotic arm/leg.

* More merge conflict fixes and adding the new files I forgot to add.

* of course I forgot birdstation

* More typos and stuff I forgot to undo.

* Fixing a typo in examine.dm
Removing an unnecessary check.
Making admin heal regenerate limbs on all carbons.
Monkey-human transformation now transfer missing limbs info and presence of a cavity implant.
NODISMEMBER species can still lack a limb if the mob lacked a limb and changed into that new species.
Changeling Regenerate ability now also regenerate limbs when in monkey form. (and remove some cryptic useless code)

* Fixing more conflicts with remie's multihands PR.

* Fixes runtime with hud when calling build_hand_slots().
Fixes lightgeist healing not working.
Fixes null.handle_fall() runtimes with pirate mobs.
Fixes typo in has_left_hadn() and has_right_hand().

* Derp, forgot to remove debug message.
2016-09-12 19:33:50 +02:00
Remie Richards
00738bd2a3 More than 2 hands!? WHAAAAAAT 2016-09-02 16:10:16 +01:00
Shadowlight213
1a8dfe22c2 fixes empty inventory issue 2016-07-28 14:11:50 -07:00
Shadowlight213
7f642978ef fixes 2016-07-26 14:03:43 -07:00
Shadowlight213
7a6f378e17 Merge branch 'master' of https://github.com/tgstation/tgstation into observehud 2016-07-26 11:53:23 -07:00
GunHog
a607211dfb Adds Queen Finder for Xenos
- Xenos now have a "queen sense" which tracks the queen like a
pinpointer.
- Added WJ's custom sprites for all non-queen Xenos.
- Modded the alien type finder to support queen finding
2016-07-14 13:36:18 -05:00
Shadowlight213
98f7b48f44 Fixed remaining issues with icons.
Hud now uses adding and removing from screen instead of setting the screen_loc of objects to null.
2016-07-01 15:44:37 -07: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
Timato
987654199b Adds a soul counter (#18711)
Adds a soul counter for devils
-unique sprite
-only visible for devils
2016-06-28 19:15:16 +12:00
Shadowlight213
49a887665d Gives observers the ui of the mob they observe.
WIP. works on humans.
2016-06-01 14:48:02 -07: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
phil235
91839f5f70 Action buttons will now only update when needed instead of every Life().
The action buttons now update their icon instantly.
Fixes versions of pickup(),equipped() and dropped not calling the parent.
Fixes drone not being able to remove a defib from their storage.
You can now cycle the mime mask by clicking it in your hand.
The action buttons for hardsuit and hooded suits now only appears when you're wearing the suit.
Created two mob helper procs getBeltSlot() and getBackSlot().
Created /datum/species/proc/on_species_loss() to handle stuff when our race change, currently only used by jelly and slime race to remove their exotic blood from our reagents and to remove slime people's action buttons.
2016-02-22 00:34:59 +01:00
phil235
34214d321a Fixes revenant not seeing itself and not having his action buttons.
Fixes many mobs having a null hud_used.
Fixes fullscreen overlay disappearing when toggling the hud.
Fixes our vision when being ejected by a delivery chute and when inside a disposal unit that is being destroyed.
2016-02-10 23:17:44 +01:00
phil235
fdec37b76f Merge branch 'master' of https://github.com/tgstation/-tg-station into VisionUpdateRefactor
Conflicts:
	code/_onclick/hud/alien.dm
	code/_onclick/hud/alien_larva.dm
	code/_onclick/hud/hud.dm
	code/_onclick/hud/human.dm
	code/_onclick/hud/monkey.dm
	code/_onclick/hud/other_mobs.dm
	code/_onclick/hud/robot.dm
	code/game/machinery/Sleeper.dm
	code/modules/mob/living/carbon/alien/larva/death.dm
	code/modules/mob/living/carbon/brain/death.dm
	code/modules/mob/living/carbon/human/death.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/carbon/human/species.dm
	code/modules/mob/living/carbon/life.dm
	code/modules/mob/living/carbon/monkey/death.dm
	code/modules/mob/living/death.dm
	code/modules/mob/living/life.dm
	code/modules/mob/living/silicon/ai/death.dm
	code/modules/mob/living/silicon/ai/life.dm
	code/modules/mob/living/silicon/ai/login.dm
	code/modules/mob/living/silicon/pai/death.dm
	code/modules/mob/living/silicon/robot/death.dm
	code/modules/mob/living/silicon/robot/robot.dm
	code/modules/mob/mob_defines.dm
2016-02-06 15:42:13 +01:00
Bjorn Neergaard
4a3da5d77a Properly layer and set/clear fullscreen overlays
This fixes ordering issues and admin ghosting
2016-02-04 17:19:45 -06:00
Bjorn Neergaard
7a47b43c53 Re-implement screen overlays
This fixes 510 showing all overlays in the rightclick menu
2016-02-04 17:19:44 -06:00
phil235
4d63a481dd Fixes merge conflict erro (readd datum/hud/Destroy())
Fixes cyborg sight not updating when equiping/unequiping sight modules.
2016-02-04 20:43:28 +01:00
phil235
81ce777ec2 - you now only see turfs when inside gas pipes.
- I renamed some vars of datum/hud to be more selfexplanatory
- Moved all datum/hud mob code into the hud folder.
- fixed alien's zone selection button not using the correct sprites.
- I removed the update_hud() proc (that needed to be removed).
- Fixed a typo in /mob/living/carbon/ContractDisease , using "internals" instead of "internal" (very different things)
- Fixed doTeleport() calling Entered() twice on the destination area.
- To reference a mob's selected zone, you now use a direct mob var ("H.zone_selected" instead of "H.zone_sel.selecting")
- mobs lose certain screen objects var ("healths", "zone_sel", "internals", etc) which are now vars of the mob's datum/hud instead.
- the Blind spell is now done via the blind mutation instead of the blind disabilities.
- Give to mobs a version of forceMove(), so the mob is always properly unbuckled, his pull stopped, his vision updated, etc.
- The "user" var of mob/camera/aiEye/remote is renamed to "eye_user" to avoid confusion.
- reset_view() is replaced by reset_perspective(). Now all changes to client.eye and client.perspective are done with this proc.
- I reworked /obj/machinery/computer/security code, changing camera is instantaneous now, as well as cancelling.
- I reworked /obj/machinery/computer/camera_advanced code as well.
- I changed /obj/item/mecha_parts/mecha_equipment/mining_scanner's meson view to be constant instead of by intermittent.
- Fixes not being able to use /obj/item/device/camera_bug while buckled.
- removed admin_forcemove() proc, admin force moving now uses forceMove() simply.
- Removed the client var "adminobs"
- Added var/vision_correction to glasses.
- Added a thermal_overload() proc for glasses, to remove copypasta in emp_act code.
- Remove the hal_crit mob var
- We no longer delete the mob's hud everytime he logs in.
- Added a stat == dead check in mob's metabolize() so we immediately stop metabolizing if one of the chem kills the mob.
- Being inside disposal bin lowers your vision, like wearing a welding helmet.
- removed the remote_view mob var.
- I changed advanced camera EYE, some fixes, removed unnecessary code when the eye moves, now the mob client eye properly follows the camera mob.
- fixes mob var "machine" not being nullified on logout.
- larva/death() was calling two "living_mob_list -= src"
- I made the Blind screen objects into a global_hud instead of giving one to each mob (like damage overlay).
- I untied tint and eye_blind, TINT_BLIND doesn't give you eye_blind=1.
- gave a visual overlay when inside locker (vimpaired)
- when inside disposal/gas pipes you get sight |= (BLIND|SEE_TURFS)
- glasses toggling updates (atmos meson toggle): DONE
- The new adjust procs serve to properly change eye_blind etc and call vision update procs when needed.
- I added an on_unset_machine() proc to handle perspective reset for camera consoles.
- I moved consequences of eye_check fail inside eye_check() procs themselves.
- I fixed vision updates being fucked by forceMove, especially pipe vision.
- I decided that damage overlay not appearing when dead.
- mob's hud_used is no longer deleted on each login()
- I refactored mob huds a bit, creating subtypes for each mob (/datum/hud/human)
- f12's hud toggling is now available to all mobs
- gave borgs a low_power_mode var so unpowered borg do not use stat= UNCONSCIOUS (which made things weird since you were unconscious but not blind)
- Fixed double Area entering when forced teleporting.
- I fixed larva pulling not being broken when cuffing them, and larva not seeing handcuff alert (and they can resist by clicking it)
- I removed pull updates from life() since it onyl checked for puller's incapacitation.
- I renamed camera/deactivate() to toggle_cam() to be more accurate.
- I fixed mmi brain being immortal (by removing the brain and putting it back)
- I simplified mmi brain emp damage.
2016-02-04 00:33:16 +01:00
Razharas
ad5172a839 Merge pull request #14989 from ChangelingRain/holoclarity
Holoparasites have a health hud display for the summoner's health
2016-01-29 20:20:25 +03:00
Nerd Lord
d492db3e58 useful commit message here 2016-01-28 12:50:38 -05:00
Nerd Lord
cdcf4dbc26 Holoparasites have a health hud display for the summoner's health, as a percentage.
Adds glows when holoparasites force-recall to their summoner
2016-01-27 21:32:22 -05:00