Commit Graph

41 Commits

Author SHA1 Message Date
AffectedArc07
ec790efeaa SSticker 2019-04-30 16:47:47 +01:00
Aurorablade
4fc35a68b1 Gonna have to clean some files after this. 2019-01-19 22:38:47 -05:00
Desolate
c974e29a3c global lists global defined 2018-10-02 15:52:46 -05:00
Fox McCloud
7440dad57e further conversion 2018-07-18 01:13:24 -04:00
Fox McCloud
aae5405d03 AGHHHHHHHHHHHHHHHHHHH WHATTT 2018-07-17 04:58:36 -04:00
Fox McCloud
8c7b543415 The Great Conflictening 2.0: Removes /obj/item/device 2018-04-25 23:07:35 -04:00
Fox McCloud
5c4aa9b3fd Removes All Weapons 2018-04-15 16:25:56 -04:00
FalseIncarnate
9e88e7f1db Adds Highlander Style: The Martial Art of Highlanders
Adds a new martial art: Highlander Style!
- Wielders of the powerful Highlander claymores are imbued with this
mythical prowress. Should your both your hands ever lack a grip on a
Highlander claymore, you will relinquish your newfound skill.
- Highlander Style grants immunity to ranged attacks and an unwavering
distain of cowardly guns. Just like with Sleeping Carp, you will deflect
projectiles and cannot fire guns (but can pick them up to throw in the
trash where they belong).

Adds new weapon: Highlander Claymore
- Grants the wielder the Highlander Style while held in either hand.
- Normal claymores were left in, but do not provide the martial art (so
they are "safe" to use outside highlander)

Minor refactor to martial arts which prevent use of guns.
- No longer relies on the name of the style, but rather the new
aptly-named var: `can_use_guns`

🆑
rscadd: Adds Highlander Style, granted to the wielder of Highlander
Claymores. This martial art allows you to deflect ranged attacks from
the weapons of COWARDS. FOR THE HONOR OF THE HIGHLANDERS!
tweak: Highlander now equips combatants with a Highlander claymore
instead of a normal claymore. FIGHT ON BROTHERS!
/🆑
2017-06-07 02:35:23 -04:00
Tigercat2000
14ba6fded6 Ported /tg/'s outfit datums, refactored job controller to support them
Players:
 - The only thing that you should notice is that your backpack options
 have changed. Instead of being "None", "Backpack", "Satchel", and
 "Satchel Alt", there are 6 options:
   - "Grey Backpack": Ensures you always recieve a plain grey backpack.
   - "Grey Satchel": Same as the above, grey, plain, satchel.
   - "Grey Dufflebag": So you don't have to rush the locker room, I
   guess. Just kinda ransacked it from /tg/. Happy to revert it, please
   do not post a five paragraph text wall calling me a shitlord
   powergaming hitler-loving furry.
   - "Leather Satchel": It's a leather satchel. What the hell did you
   think it was?
   - "Department Backpack": Gives you the department's default backpack.
   Grey for most jobs.
   - "Department Satchel": It gives you the department's default
   satchel; A grey satchel if the department doesn't have one.

Coders:
 - The above means this needs a minor SQL change:
   ```
   SQL goes here
   I'll write a query later
   Can't be bothered now
   Kill me please
   ```

 - This is a cleaner method of handling job equipment than
 "M.equip_or_collect" x 1000. Jobs specify a '/datum/outfit' datum,
 which defines all of the things to equip to the user.

 - Minor note: equip_or_collect will no longer ever generate a plastic
 bag. It will instead just drop stuff on the floor if it can't stuff it
 into a mob. If this is even slightly a point of contention, more than
 happy to revert it; It was just requested by Fox.
   - Addendum: This also has the effect of making it so that labcoats
   are just thrown onto the floor if you have a loadout suit. It's not
   really avoidable. Uniforms and suits are equipped before the
   backpack.

 - Changes from /tg/:
   - Changed all of the "H.equip_to_slot_or_del" calls into invoking a
   new "equip_item" proc; This is used to support a new variable called
   "collect_not_del". Job outfits use this, it makes it so that the
   system calls equip_or_collect instead of equip_to_slot_or_del. The
   idea being that job items should never be lost to the void,
   especially because they can conflict with loadout items.

TODO:
 - Retrofit "Equip Mob" verb to use this for all of the non-job options
 - Fully implement head announcements(?)
   - May be best for a second PR that addresses all of the real issues
   with our current job system

( Now go reread that SQL code block :) )
2017-02-17 11:35:45 -08:00
Tigercat2000
9f3cdb43f7 special_role/objective refactor
Refactored most instances of special_role setting/checking to use new
SPECIAL_ROLE_X defines in code/__DEFINES/gamemode.dm

Removed relative pathing from objective.dm and split large if statements
into multiple, plus a bunch of styling fixes

Refactored every instance of `istype(ticker.mode` into a GAMEMODE_IS_X
define in code/__DEFINES/gamemode.dm. Done primarily for when someone gets
around to making gamemode code less AWFUL
2016-08-01 21:29:19 -07:00
Tigercat2000
71e5344a98 Mass replace 2016-07-07 19:34:02 -07:00
Krausus
eecf8ba93b to_chat fixes
Mostly sounds using to_chat instead of << like they should. Also, the
to_chat CRASH now refers to itself as to_chat instead of Boutput.
2016-06-24 18:36:50 -04:00
FalseIncarnate
5630869f0b Admin Tools Fixes and New Addition
Highlander and Dodgeball will now view Vox as incompatible species and
convert them into humans to avoid issues with deleting their much-needed
internals
- Already did this for plasmamen

Adjusts team selection for Dodgeball to hopefully result in consistently
"balanced" teams (in terms of numbers)
- Rather than relying on a if(prob(50)) check, it now just switches back
and forth with each successful team addition

Adds a new admin panic button: "Del Singulo / Tesla"
- After a confirmation, deletes ALL singularities and tesla orbs across
all z-levels (except away missions and cent-comm), regardless of
containment

Not gonna changelog this since it's non-player stuff
2016-05-28 15:21:02 -04:00
Tigercat2000
78f53553f8 Reduce lines by removing blank lines added by PJ's script 2016-04-05 08:25:57 -07:00
Tigercat2000
9d430844c3 Replace most (if not all) output << operators with to_chat(user, message)
Currently, to_chat is literally just a proc that does user << message.
But it'll let us do output modification in the future, especially for
something like Goon's HTML chat.

Big thanks to PJB for his to_chat script, see
https://github.com/d3athrow/vgstation13/pull/6625 for more details.
2016-04-05 08:15:05 -07:00
Fox-McCloud
c4341992d1 last tweaks 2015-10-22 21:52:20 -04:00
Fox-McCloud
77a354979c tweaks 2015-10-22 01:13:37 -04:00
Fox-McCloud
a404929d16 Multiverse Sword 2015-10-21 23:59:59 -04:00
Markolie
14f64b2b24 Fixes for Vox/Plasmamen highlanders/dodgeball players 2015-09-23 21:17:40 +02:00
Fox-McCloud
0dbea7621f The Great Del() Cull of 2015 2015-07-09 02:48:34 -04:00
ZomgPonies
91e8b909c0 Squish Squash 2015-04-04 14:27:53 -04:00
Fox-McCloud
a03879d83f Sound Updates 2015-02-16 16:29:43 -05:00
ZomgPonies
11a1deb1ac Trying to cut down on attack lock spam 2014-05-24 17:17:38 -04:00
ZomgPonies
342f8c4042 Fixed up Highlander and Dodgeball 2014-05-22 14:21:29 -04:00
ZomgPonies
f2376198ff Fix highlander clothing update maybe? 2014-05-19 06:14:55 -04:00
Rob Nelson
1f30243a08 Refactor the fuck out of theft objectives. No more stealing your own jumpsuit.
Conflicts:
	code/datums/mind.dm
	code/game/gamemodes/objective.dm
	code/modules/mining/money_bag.dm
	code/modules/mining/ores_coins.dm
	html/changelog.html
2014-01-24 12:16:57 -05:00
ZomgPonies
de20a3b941 Dodgeball - WIP 2013-11-25 01:10:47 -05:00
ZomgPonies
5daf979b72 Pretty much all new click code 2013-10-12 14:44:36 -04:00
ZomgPonies
2ffdf37166 Overhaul of random events 2013-09-25 23:22:32 -04:00
elly1989@rocketmail.com
97e95e4ab0 Moved "there can only be one" to the secrets panel (fun)
Removed the last of the old promotion/demotion code.
Permissions panel accessible via player panel.
Uncommented the attack log verb. I mistakenly thought it wasn't used.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5102 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-17 23:28:54 +00:00
baloh.matevz
5a199fc564 I started with the desire to fix issue 634. It sounded like a simple issue, right? Well one complete rewrite of how equipping and stripping works later, this commit fixes issue 645
Code-wide changes: /mob -level procs:
equip_if_possible() is now known as equip_to_slot_or_del() to prevent confusion with equip_to_slot_if_possible() and to better describe what it does.

equip_to_slot_if_possible(item, slot, del_on_fail, disable_warning, redraw_mob)

equip_to_appropriate_slot() is now a /mob - level proc.

equip_to_slot() is an unsafe proc, which just handles the final step of actually getting an item onto the mob. It has no checks of whether it can or can't do that. Use equip_to_slot_if_possible() for that purpose.

New /obj/item -level proc:
/obj/item/proc/mob_can_equip(M as mob, slot, disable_warning = 0)

This proc can be used to determine whehter a mob can pick up an item from the item's side.

Carn, I'll need you to review code/modules/mob/living/carbon/human/inventory.dm to ensure that I'm not redrawing the mob too many times.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4423 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-15 23:15:55 +00:00
sieve32@gmail.com
7bf6788082 -OPTIMIZATION TIME
-Almost every instance of 'for(mob in world)' has been killed. Because GODDAMN was it being run a bunch. Instead, a series of global lists have been made, and they are all handled auto-magically through New()'s, Del()'s, Login()'s, death()'s, etc...

Lists are as follows:
-mob_list : Contains all atom/mobs by ref
-player_list : Like mob_list, but only contains mobs with clients attached
-admin_list : Like player_list, but holds all mobs with clients attached and admin status
-living_mob_list : Contains all mobs that ARE alive, regardless of client status
-dead_mob_list : Contains all mobs that are dead, which comes down to corpses and ghosts
-cable_list : A list containing every obj/structure/cable in existence
Note: There is an object (/obj/item/debuglist) that you can use to check the contents of each of the lists except for cables (Since getting a message saying "a cable," x9001 isn't very helpful)

These lists have been tested as much as I could on my own, and have been mostly implemented. There are still places where they could be used, but for now it's important that the core is working. If this all checks out I would really like to implement it into the MC as well, simply so it doesn't check call Life() on every mob by checking for all the ones in world every damn tick.

Just testing locally I was able to notice improvements with certain aspects, like admin verbs being MUCH more responsive (They checked for every mob in the world every time they were clicked), many sources of needless lag were cut out (Like Adminwho and Who checking every single mob when clicked), and due to the cable_list powernet rebuilding is MUCH more efficient, because instead of checking for every cable in the world every time a powernet was broken (read: A cable was deleted), it runs though the pre-made list, and even with a singulo tearing all the way across the station, the powernet load was VERY small compared to pretty much everything else.

If you want to know how any of this works, check global_lists.dm, there I have it rigorously commented, and it should provide an understanding of what's going on.

Mob related in worlds before this commit: 1262
After: 4
I'm helping


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4179 316c924e-a436-60f5-8080-3fe189b3f50e
2012-07-26 03:04:05 +00:00
VivianFoxfoot@gmail.com
4dfe439b1a Adds BS12 dismemberment. Not all features of it are implemented yet, but it should be equal to our previous system.
Adds greater changeling code, but doesn't change the genome count yet on it. 
Renames registered to registered_name on IDs because bs12 had it and it seemed like a good idea to do last night.  For some reason.   
Adds an afterattack to mobs that can be used.  (In fairness, lots of shit in attack_hand should be in there instead, like stungloves and stuff, to minimize duplicated code)

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3537 316c924e-a436-60f5-8080-3fe189b3f50e
2012-05-01 15:33:29 +00:00
baloh.matevz@gmail.com
d1d0fd5e4f - hand tools now fit on your belt slot
- added feedback logging for newscasters
- added feedback logging for admin verbs
- added shuttle timers to escape pods
- added feedback logging to chemical reactions
- clipboard can now fit on your belt

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3465 316c924e-a436-60f5-8080-3fe189b3f50e
2012-04-16 04:00:36 +00:00
kortgstation@gmail.com
c00d699ab6 Added the pirate captain stuff for HG
Changelings can now regen from death
Loyalty implants are now orderable from QM
Repair bot is now adminspawn only
Added the mech ion cannon, which is adminspawn for now
Tweaked highlander a bit
Updated the changelog

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2499 316c924e-a436-60f5-8080-3fe189b3f50e
2011-11-08 00:47:50 +00:00
kortgstation@gmail.com
e49ec9211c Added a claymore (sword)
Re-did the Highlander button.

In place of a traitor PDA, it now strips the player, gives them a kilt/boots/beret/claymore and full access.

Objectives remain as nuke codes+escape alone.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2461 316c924e-a436-60f5-8080-3fe189b3f50e
2011-10-31 10:44:45 +00:00
rastaf.zero@gmail.com
f639ece55d Update for game masters:
-Right click commands "Make robot/alien/ai/monkey" moved to "edit player" screen.
-Right click commands "Make traitor/cultist/changeling/etc" moved to "edit mind" screen.
-- note: currently the only way to humanize monkey is to use "edit mind" screen.
-Added right click commands showing "edit player" and "edit memory" screens.
In light of an incoming tournament on ss13.ru I have added "Select equipment" right click command. It allows to instantly dress mob as you wish. Coders, feel free to add more dress packs, like "centcom inspector", "space pirate" and so on.
A strange command "list_occ" now called "List free slots" and shows unoccupied jobs.
Added golden cup, sprite belongs to Farart.

You can now take a power cell from charger even if there is no power.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1724 316c924e-a436-60f5-8080-3fe189b3f50e
2011-06-25 11:30:05 +00:00
rastaf.zero@gmail.com
39dd425219 Objectives "steal plasma" and "steal AI" now correctly checks contents of backpacks.
Objectives code is made more compact and clear.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@908 316c924e-a436-60f5-8080-3fe189b3f50e
2011-01-23 23:11:02 +00:00
noisomehollow@lycos.com
7c122ab3cb Changelong:
More tweaks to death commandos.
More work on CentCom.
Fixed turret control issue for AI.
Station blueprints now spawn in CE's locker.
Power control modules placed on the map.
More shield generator stuff by Barhandar: shield walls and shield wall generators now respect bullets and they (bullets) have chance to get past the shield. This also means you can power shield generators through emitters but it takes two to make a generator stable.
Misc map changes.
Re-check gimmick closets so they no longer spawn empty.
Added a new admin button under Special Verbs. Allows to easily respawn a player (as an assistant) if their original body was gibbed. Currently doesn't set player preferences. WIP.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@675 316c924e-a436-60f5-8080-3fe189b3f50e
2010-12-20 00:33:10 +00:00
musketstgstation@gmail.com
ef103ccbea Added confirmation to the THERE CAN BE ONLY ONE button and made it coder-level.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@598 316c924e-a436-60f5-8080-3fe189b3f50e
2010-12-12 22:45:42 +00:00
musketstgstation@gmail.com
c9cd0f6c61 Added THERE CAN BE ONLY ONE button for host-level admins.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@591 316c924e-a436-60f5-8080-3fe189b3f50e
2010-12-12 02:48:35 +00:00