Commit Graph

258 Commits

Author SHA1 Message Date
tkdrg
179003b57c Merge pull request #6808 from Boggart/readminbugfix
Re-admin bugfixes.
2015-01-10 01:29:01 -03:00
Boggart
5f42bac272 Fixes deadmins from being unable to re-admin after disconnecting. 2015-01-05 00:50:49 -07:00
Boggart
57f69f17e4 Moves the removal of the re-admin verb to the admin holder's associate proc to prevent reload_admins and any other method of re-adminning someone from leaving them with the re-admin verb. 2015-01-04 19:30:20 -07:00
carnie
a3f5e7ebfd Merge branch 'master' of https://github.com/tgstation/-tg-station into SubSystems
Conflicts:
	code/game/gamemodes/setupgame.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/reagents/Chemistry-Machinery.dm
2015-01-04 01:52:14 +00:00
Boggart
bb6125a5f1 Fixes feedback on failure due to null rank or disconnected DB. Sanitizes ckey in DB query. 2015-01-02 13:24:49 -07:00
Boggart
aed9d6b0e2 Fixes some tabs being spaces. 2015-01-01 23:05:32 -07:00
Boggart
2b0932047a Improves feedback to the user of the re-admin verb. 2015-01-01 23:02:18 -07:00
Boggart
0ceda7939c Adds the ability for admins to re-admin themselves once they de-admin. 2015-01-01 20:42:53 -07:00
carnie
a029a49392 SubSystem rewrite
Misc:

+Fixes unreported issue with initializing lighting on a specific zlevel

+Fixes two similar issues with moveElement and moveRange. Where fromIndex or toIndex could be adjusted incorrectly in certain conditions. Potentially causing bad-sorts, or out of bound errors.

+Rewrites listclearnulls(list/L) to no longer iterate through L.len elements for every null in the list (plus 1). i.e. went from L.len*(number_of_nulls+1) list-element reads (best-case), to L.len list-element reads (worst-case)

+New proc/getElementByVar(list/L, varname, value) which finds the first datum in a list, with a variable named varname, which equals value. You can also feed it atoms instead of lists due to the way the in operator functions.

+Fixes an unreported issue with Yota's list2text rewrite. Under certain conditions, the first element would not be converted into a string. Causing type-mismatch runtimes.

+New global map_ready variable. This is not fully implemented yet, but will be used to avoid duplicate calls to initialize() for map objects.

+All turfs now maintain references to all lights currently illuminating them. This will mean higher memory use unfortunately, due to the huge number of turfs. However, it will speed up updateAffectingLights significantly. I've used list husbandry to reduce baseline memory usage, so it shouldn't be any worse than some past atmos modifications memory-wise.

-Removed 'quadratic lighting', can add this back at some point. Sorry.

+modified the way lum() works slightly, to allow turfs to have overridden delta-lumen. i.e. space cannot be illuminated more than its default ambiance. This allowed removal of some iffy special-snowflake lighting areas implemented by somebody else.

+Lighting images in the dmi can now use arbitrary naming schemes. It is reliant on order now. This allows the dmi to be replaced by simply dropping in a new dmi.

-Removed all subtypes of /area/shuttle. Shuttles now create duplicate 'rooms' of /area/shuttle. (More on this later). This will conflict with most maps. Guide on how to fix to follow.

+All verbs/tools relating to world.tick_lag were refactored to use world.fps. However old config text for setting tick_lag will still work (it converts the value to fps for you)

+MC stats improved using smoothing. They now have their own tab so they dont get in the way when you're playing as an admin.

-removed the push_mob_back stuff due to conflicting changes. Sorry Giacom.

_OK, NOW THE ACTUAL INTERESTING STUFF_

Following systems moved over to subsystem datums:
air_master
garbage_manager
lighting_controller
process_mobs (aka Life())
nanomanager
power
sun
pipenets
AFK kick loops
shuttle_controller (aka emergency shuttle/pods), supply_shuttle and other shuttles
voting
bots
radio
diseases
events
jobs
objects
ticker

Subsystems hooks and variables should be commented fairly in-depth. If anything isn't particularly clear, please make an issue.

Many system-specific global variables have been refactored into

All tickers which previously used world.timeofday now use world.time

some subsystems can iterate before round start. this resolves the issue with votes not working pregame
2014-12-31 13:25:41 +00:00
Swag McYolosteinen
879f67d834 Merge pull request #6142 from CorruptComputer/dropinacancel
Adds a cancel button to the drop bomb verb
2014-12-03 18:12:45 +01:00
Swag McYolosteinen
5863d2f5e8 Merge pull request #6075 from Jordie0608/spaceisalivewiththesoundofmidis
Stop Sounds usable by any holder
2014-12-03 17:49:51 +01:00
CorruptComputer
ae37dc1013 Allows 0 2014-11-29 14:55:57 -06:00
CorruptComputer
fe3e3e8ecc Adds a cancel button to the drop bomb verb 2014-11-29 12:39:57 -06:00
Intigracy
8a1baad03b forgot the var / proc 2014-11-27 14:50:21 -08:00
Jordie0608
1172851b0e Stop Sounds usable by any holder 2014-11-26 15:29:30 +11:00
phil235
3a97e8d878 Fixes not being able to have more than one virus. (two typos fixed) 2014-11-22 18:30:19 +01:00
Remie Richards
2054cbda08 Merge branch 'master' of https://github.com/tgstation/-tg-station into DiseaseRework
Conflicts:
	code/modules/mob/living/carbon/carbon.dm
	code/modules/mob/living/carbon/human/human_attackpaw.dm
	code/modules/mob/living/carbon/monkey/monkey.dm
2014-11-08 01:07:29 +00:00
Remie Richards
fa184f5487 Cuts /disease variables from 28 to 23 (includes new ones)
a disease may now have more than one spread type
added "infectivity" variable which replaces a prob(65), defaults to 65
affected_species is now viable_mobtypes, and lists typepaths, this is due to us actually having a species system now so it's confusing
adds defines for a bunch of stuff
2014-10-30 06:21:14 +00:00
tkdrg
5f1098dd3c Creates the "Reset Telecomms Scripts" adminverb 2014-10-27 18:29:54 -03:00
hornygranny
6a918f98c5 Merge pull request #5454 from MrStonedOne/t-t-t-tadaydb
Adds admin verb to reestablish connection to the database
2014-10-25 18:41:24 -07:00
MrStonedOne
3ebd53b7c7 Adds new admin verb to reconnect to the database when the connection dies. 2014-10-24 11:21:15 -07:00
MrStonedOne
a11eacc8b8 fixes issue preventing admins from using hotkey mode 2014-10-07 15:30:42 -07:00
phil235
dd7a3b7fbc Merge branch 'master' of https://github.com/tgstation/-tg-station into Msg1Fix
Conflicts:
	code/modules/admin/admin_verbs.dm
2014-10-05 13:48:11 +02:00
Cheridan
08be1b34eb Revert "Changes a few green crosses to blue on sprites that I missed last time" 2014-10-04 19:22:10 -05:00
phil235
537280b4b9 Removing many instances of the no longer used second argument of message_admins() proc.
Replacing "for(var/mob/M in viewers()) M.show_message()" by "visible_message()" or audible_message()" in many places.
Changing a few span classes.
2014-10-05 01:29:30 +02:00
Miauw
f0ddaf7d8e Merge branch 'master' of https://github.com/tgstation/-tg-station into 420
Conflicts:
	code/modules/admin/admin_verbs.dm
2014-09-27 16:09:31 +02:00
Miauw
77584d4a7d Fixes a bunch of saycode things. Objs can now hear radio talk.
Added a proper strip_html() function.
Fixed #4959
2014-09-27 16:06:06 +02:00
phil235
7afbd3345b Replacing some hearers(...) with get_hearers_in_view(...).
Renaming Make Sound to Object Say.
Switching deaf_message in audible_message proc to last argument.
Replacing some "for(mob in hearers)+show_message" with audible_message()
2014-09-25 18:22:27 +02:00
phil235
8d6ee69a36 Fixing issue where people can't hear their own emotes while inside lockers and the audible messages when also in the dark. Removing object_talk() proc (obsolete). 2014-09-14 16:17:16 +02:00
phil235
87d7c9e91e Create the audible_message() proc to replace most instance of " for(var/mob/M in hearers(...) show_message(..., 2)"
fixing typos and missing emotes in emote lists.
2014-09-14 01:15:15 +02:00
Firecage
6d259e10ec Spanclass fixes 2014-09-03 20:00:35 +02:00
Miauw
78a9b0be69 Merge branch 'master' of https://github.com/tgstation/-tg-station into say()
Conflicts:
	code/__HELPERS/game.dm
	code/game/gamemodes/cult/runes.dm
	code/game/machinery/requests_console.dm
	code/game/machinery/telecomms/logbrowser.dm
	code/game/objects/items/devices/PDA/radio.dm
	code/game/objects/items/devices/aicard.dm
	code/modules/admin/admin_verbs.dm
	code/modules/assembly/holder.dm
	code/modules/assembly/voice.dm
	code/modules/mob/living/carbon/brain/brain.dm
	code/modules/mob/living/carbon/human/whisper.dm
	code/modules/mob/living/carbon/slime/slime.dm
	code/modules/mob/living/say.dm
2014-08-31 13:40:16 +02:00
Miauw
98d567dde7 more say bugfixes 2014-08-29 14:40:51 +02:00
Miauw
bc2b8d0d5d DONE DONE DONE DONE DONE DONE 2014-08-27 17:40:26 +02:00
Firecage
6c7af5eb32 SPANCLASSES!!!!! 2014-08-26 09:52:13 +02:00
ikarrus
170c0e1b6b Removed Events from Admin Secrets menu. Trigger Event verb moved to Fun tab.
-No more need to maintain a list of events to trigger
-No more needing to use debug-verbs to trigger all events
2014-08-15 20:24:49 -06:00
Aranclanos
12242cad7d Removes the unused and useless warn button on the player panel. 2014-08-06 03:43:28 -03:00
MrStonedOne
b607d50e7a Admins lacking +admin get admin pm stuff
They can use like 50 herf links to do this already, including rightclick mob -> view vars -> player panel -> pm
2014-05-08 13:17:23 -07:00
Razharas
78a6a1c416 Merge pull request #3068 from Aranclanos/Profiles
Profiles from client.
2014-03-16 12:52:56 -07:00
Aranclanos
7b767c7c94 Added a new admin txt under the new cfg folder. The ckeys of this list will be able to make profiles on servers that they are admins. We welcome servers to change this list as it is a configuration file. Being on this list does NOT grant you any kind of admin powers.
All admins will now have the control_freak disabled but for skin and macros, to make this work.
2014-03-13 15:38:06 -03:00
Rockdtben
a034e41f25 Removing TLE comment stamps and useless comments 2014-03-13 08:25:28 -05:00
Jordie0608
1fc448c043 Reload admins usable by anyone with adminrank 2014-03-08 15:46:36 +11:00
Perakp
1004235a28 Added feedback when you give spells to mindless mobs. 2014-02-14 21:47:41 +02:00
Perakp
7e324bb17c - Still fixing merge conflicts
- Giving spells to mobs without minds should work
2014-02-14 21:32:16 +02:00
Perakp
7ca06565b5 Merge remote-tracking branch 'upstream/master' into spellsFromBodyToMind
Conflicts (Resolved):
	code/datums/spells/mind_transfer.dm
	code/game/gamemodes/wizard/artefact.dm
	code/modules/mob/mob.dm
	code/modules/projectiles/projectile/change.dm
2014-02-14 20:57:11 +02:00
Jordie0608
45ee53517a Outright removed toggle admin jump,spawn and revive buttons 2014-01-27 16:10:19 +11:00
Jordie0608
8d256558b4 totally didn't forget about this, no siree 2014-01-27 03:28:02 +11:00
Perakp
8ba1e8cd33 - Moves spells from the mob to the mind.
- Construct spells are an exception.
- Spells are transferred whenever a mind is transferred: cloning, pod cloning, borging, staff of changing.
- Spells are not transferred when you create a new mind for a new mob: soul stones, golems, respawns.
- To my surprise, this did not fix the issue where a mind-swapped wizard loses their spells when their original body is destroyed. I do not know why this happens.
- Non-human mobs can't use spells by default. Varedit spell.human_req to do that.
2014-01-10 15:59:55 +02:00
ikarrus
5f15506e38 Admin Notices
Lets admins set temporary notices that will last until the end of the round.
* All players that join the server will see this notice.
* Anyone can check it using the Adminnotice verb
* Also adds the motd verb that can be used to check the server's message of the day

The intention of this is to make it easier for admins and server hosts to run special events.
2013-12-03 22:25:28 -07:00
supersayu
475042a212 Click code rework
Fixes #646, #579, #863

Completely redoes the click code.  Moves all click related code into code/_onclick for reference.  Also moves hud datum code and all the screen object code I could find into code/_onclick/hud, as it is related.  Item attack(), attackby(), afterattack(), and attack_self() have been moved into item_attack.dm for consistency.

Completely removes dummy objects and adds atom.Adjacent(user).  This proc checks for border items and anything marked with throwpass for determining whether or not you can reach a given square.  A turf helper, ClickCross(), was added to facilitate this.

Removes the monolithic Atom.Click() proc in favor of an overridable click handler attached to mobs.  Click code no longer uses the : path operator as a consequence, and mob/lastDblClick has been moved to Client/next_click.  A few end arounds were necessary (screen objects, buildmode, and spells), but this has been handled by repurposing Atom.Click(); if you have special click code, insert it in the object's Click() function and return 1 to prevent normal processing.

This update adds support for attack_ghost(); the previous "new" click handler had support for it but was never finished.  I have taken the liberty of letting ghosts click portals, the gateway, and the teleporter to jump to the intended target square, and kept the previous default action of examine()ing every damn thing you click.  It is to be suggested that you could do more with this proc when ghost interactions are enabled.

This update also adds support for double clicking.  It is currently only used for ghosts and AIs, because the original (first) click still registers normally.  For both of these, double clicking a square will jump you to it, and double clicking a mob will follow it.  In the case of ghosts, double clicking bots and the singularity will also set you following it; if you double click your own corpse, you will re-enter it; this also works if your body is in a closet, sleeper, DNA scanner, etc.  Default mobs ignore double clicks as normal.

-- NOTE --

There are two flags which were previously unused or misused by click code: USEDELAY and NODELAY.  Ostensibly, USEDELAY would double the normal 1sec delay, and NODELAY would remove it.

Using either of these flags as intended would significantly affect the timing of the game.  In particular, USEDELAY is currently applied to guns and about everything else that acts at range.  I am adding USEDELAY as a half-second increase for now, but I have not put a significant amount of thought into it.  I considered lowering the normal 1sec delay to .8sec to balance it, but the consequences of that on combat involve more calculations than I care to make.

NODELAY seems to never have been used, and I did not implement it, but I could do so trivially.
2013-09-17 18:15:54 -04:00