Moved the spellbook define into spellbook.dm, in the wizard gamemode folder.
Moved the old spells.dm to unused.
Added some new guns to summon guns.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5549 316c924e-a436-60f5-8080-3fe189b3f50e
Added a new syndicate bundle option, the smooth operator. Includes a pistol, silencer, clean up gear, and the ever essential suit and new formal shoes, with sprites by Flashkirby.
Currently the shoes are only used by smooth operators, but I'm gonna ask Ikarrus to put some on the latest map when he's done with it.
Changed the 9mm casing to use midbullet2, as weakbullet is just pathetic.
Removed /obj/item/weapon/glass, on account of it being awful and unused.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5543 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes Issue 1183
-Most game-specific messages now print to all non-new_player mobs instead of the world, round-end reports are unchanged but request consoles and other announcements will not be heard by people in the lobby any more
Fixes Issue 1158
-Tweaked the temperature resistance of mechs to be more inline with current fires. Most mechs protect almost as well as a full fire suit, and the firefighter mech is just over 2x more effective
Fixes Issue 1027
-False-walls can no longer be fixed when on top of a dense turfs
Fixes Issue 1196
-Tweaked how damage was read for CPR and self-examining so you can't perform CPR on yourself at 100 damage
Fixes Issue 1202
-Made stun-glove construction use the cable/Use() instead of just amount-2, so you can no longer get 0 amount coils
Fixes Issue 1206
-Glass reagent containers and droppers now log attacks like syringes do, with the list of reagents
Fixes Issue 1234
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5508 316c924e-a436-60f5-8080-3fe189b3f50e
* Smart fridge smartly shows (x5)(x10)(x25)(All) vend options based on quantity stored
* Gateway fix: When the away mission gate is calibrated, you will come out facing south. Matters somewhat when walking through in an exosuit. Also one pedantic text edit.
* Drink volume estimation:
* * Moved "half-full" to 26%-66% rather than 25%-49%
* * Moved "almost full" to 67%-90% rather than 50%-111% (1/.9)
Also removed /obj/item/weapon/directions and /obj/item/weapon/paperscrap.
They've been replaced by /obj/item/weapon/paper/crumpled and /obj/item/weapon/paper/crumpled/bloody.
Updated 2.1.0 and all away missions.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5497 316c924e-a436-60f5-8080-3fe189b3f50e
Standardization of the object tree and some modified functionality.
Moved a lot of storage/*_kit and similar boxes to storage/box/* ; most of these can now be found in boxes.dm. First aid kits remain a separate item type.
Replacement Light boxes pick up lights (for example broken ones) when used on them
Moved weapon/secstorage to storage/secure
Moved plant bags, ore satchel, trash bag, and sheet snatcher to storage/bag, in bags.dm
Fixed reagent_containers and snacks to pass through attackby() so the use_to_pickup code works. This affects plant bags, trash bags, and pill bottles.
Dice packs are now pill bottles, and all pill bottles can pick up dice.
Added error handling to uplink/generate_menu() so that one mistyped string doesn't bork the whole syndie uplink menu, since strings cannot be type-checked at compile time.
Cigarette packs and crayon boxes are now storage/fancy, however they retain existing update_icon() code.
Added a comment to storage.dm so that future people know where to look for use_to_pickup and allow_quick_gather code.
Updated all maps.
I've tried to test this thoroughly but I wouldn't be surprised if there were a few lingering issues. Try not to panic if you encounter any.
Full (i think) list of changed paths:
/obj/item/weapon/storage/flashbang_kit > /obj/item/weapon/storage/box/flashbangs
/obj/item/weapon/storage/body_bag_box > /obj/item/weapon/storage/box/bodybags
/obj/item/weapon/storage/chemimp_kit > /obj/item/weapon/storage/box/chemimp
/obj/item/weapon/storage/trackimp_kit > /obj/item/weapon/storage/box/trackimp
/obj/item/weapon/storage/seccart_kit > /obj/item/weapon/storage/box/seccarts
/obj/item/weapon/storage/handcuff_kit > /obj/item/weapon/storage/box/handcuffs
/obj/item/weapon/cigpacket > /obj/item/weapon/storage/fancy/cigarettes
/obj/item/weapon/storage/mousetraps > /obj/item/weapon/storage/box/mousetraps
/obj/item/weapon/storage/PDAbox > /obj/item/weapon/storage/box/PDAs
/obj/item/weapon/storage/id_kit > /obj/item/weapon/storage/box/ids
/obj/item/weapon/storage/lightbox/mixed > /obj/item/weapon/storage/box/lights/mixed
/obj/item/weapon/storage/donkpocket_kit > /obj/item/weapon/storage/box/donkpockets
/obj/item/weapon/storage/beakerbox > /obj/item/weapon/storage/box/beakers
/obj/item/weapon/storage/syringes > /obj/item/weapon/storage/box/syringes
/obj/item/weapon/storage/gl_kit > /obj/item/weapon/storage/box/rxglasses
/obj/item/weapon/storage/diskbox > /obj/item/weapon/storage/box/disks
/obj/item/weapon/storage/stma_kit > /obj/item/weapon/storage/box/masks
/obj/item/weapon/storage/lglo_kit > /obj/item/weapon/storage/box/gloves
/obj/item/weapon/storage/lightbox/bulbs > /obj/item/weapon/storage/box/lights/bulbs
/obj/item/weapon/plantbag > /obj/item/weapon/storage/bag/plants
/obj/item/weapon/storage/satchel > /obj/item/weapon/storage/bag/ore
/obj/item/weapon/trashbag > /obj/item/weapon/storage/bag/trash
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5494 316c924e-a436-60f5-8080-3fe189b3f50e
Credit goes to CodenameB and Spike68 for the original proposed commit. Althought it ended up changing, this commit still uses all of their suicide messages. Thanks to carn for pseudo-coding the base of the system that I ended up using to implement this.
The suicide verb checks the item in your active hand and calls that item's suicide_act(). (/obj/item/proc/suicide_act(mob/user)) The proc displays the suicide message to any viewers and returns a damage type. The suicide verb then applies 175 damage to the mob divided by the number of damage types. If the proc returns null (meaning that the item does not have a suicide_act() defined) the regular suicide occurs.
To any coder wanting to add items to this:
- You MUST return one or more damage types. "return (BRUTELOSS|FIRELOSS)" for example.
- Please do not manually type in the item's name; use [src] to refrence an it instead. It'll save time down the road if an item gets renamed. It also helps handle any child of that item without copy/pasting the proc to each child.
- Please do not use 'usr' for anything.
Parrots can now see which item they are holding onto in the stat panel.
The toy crossbow should once again work properly. Fixes Issue 1227.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5468 316c924e-a436-60f5-8080-3fe189b3f50e
Removed defines/obj/toy.dm and moved the defines down to objects/items/toys.dm
Moved a big chunk of defines out of defines/obj/weapon.dm and into their respective .dm files.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5441 316c924e-a436-60f5-8080-3fe189b3f50e
-Made chemistry a bit less reinforced.
-Moved more engineering equipment to access_engine_equip.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5413 316c924e-a436-60f5-8080-3fe189b3f50e
-Changed the exchange rate for plasma to supply points to 2:1
-Admins can now see photos in newscaster channels when using the button in the fun tab.
-Updated changelog.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5383 316c924e-a436-60f5-8080-3fe189b3f50e
-Permission from Erro to remove the "redeem a mech by colllecting all the toys" feature. Removed the description from the mech toys too.
-Fixed a possible exploit with ghost following to create more than one follow loop.
-Re-added send mob to the player panel.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5377 316c924e-a436-60f5-8080-3fe189b3f50e
The next type of mimic is for the staff of animation! They will copy the icon of the object they're copying and will set themselves stats based on the object too. They will not attack the bearer of the staff which made them animated.
Added the option to get the staff on the wizard's spell book.
Added a "friends" var to hostile mobs. It will make the simple animal ignore friends when choosing targets.
Changed the statues from /obj/effect/showcase to /obj/structure/showcase.
Added a new variable to projectiles, "shot_from" is the gun that shot the projectile. It's used to determine what staff animated the mob and it will then add that staff, so it can ignore it when choosing targets.
Added a wander var for simple animals, turning it to 0 will stop the simple animal from moving when idle.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5246 316c924e-a436-60f5-8080-3fe189b3f50e
Updated the changelog.
Moved Agouri's vehicle code into his dm in unused. Moved the vehicle dmi into icons/obj.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5234 316c924e-a436-60f5-8080-3fe189b3f50e
Added Xmas and Xmas Eve holiday-features:
>If ALLOW_HOLIDAYS is in config.txt, random (harmless) wrapped presents will be placed under all xmas trees on z-level 1. :3
>Ian will start wearing a santahat
Added content for the end of the Mayan Calander.
Fixed the spelling of -invisible- pens
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5226 316c924e-a436-60f5-8080-3fe189b3f50e
-Adds weed control crates, orderable by cargo techs, for the purpose of kudzu control.
-You can now construct folders with cardboard sheets.
-Moves newspaper sprites out of weapons.dmi
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5206 316c924e-a436-60f5-8080-3fe189b3f50e
Slightly improved beartrap code while I was there, mostly standardisation and formatting stuff as usual.
Fixed the Chaplain's PDA spawn.
Reduced the chance of stealthy hulk wall smashing. All but one of the messages will attempt to go over the radio now.
Changed hulk resist text colour to red because it was barely readable in green.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5191 316c924e-a436-60f5-8080-3fe189b3f50e
Updated all maps. (and updated stationCollision.dmm to have new hivebots, cmon kor)
Removed the action button from the flare, as you only ever turn it on once.
Removed a bunch of unused sprites in items.dmi.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5190 316c924e-a436-60f5-8080-3fe189b3f50e
Moved some mob vars to carbon:
mob/var/handcuffed -> mob/living/carbon/var/handcuffed
mob/var/legcuffed -> mob/living/carbon/var/legcuffed
As a result, I've turned some procs into pure virtual procs and moved their code into carbon.dm.
mob/proc/restrained() -> mob/living/carbon/restrained()
mob/proc/can_use_hands() -> mob/living/carbon/can_use_hands()
The hand and legcuff portion of mob/proc/u_equip() was moved into mob/living/carbon/u_equip().
The handcuffed portion of mob/proc/show_inv() was moved into mob/living/carbon/show_inv().
Fixes issue 1114.
Made parrots immune to bear traps since parrots should be flying over them anyway.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5184 316c924e-a436-60f5-8080-3fe189b3f50e
-Changed the focus from the high-res scanner to the regular scanner. It will simply scan the fingerprints and display them to the detective. For extra functionality, it'll store it's findings in a log and then you can print it out in a report by using attack_self().
-Detectives can now use the medical computer.
-Removed the pda forensic scanning functionality.
-Got rid of now useless high-res scanner computer. Got rid of the now useless fingerprint cards.
-Added a medical computer to the detective's office and replaced the useless medical cabinet with an empty one.
Other
-Got rid of diseases magically moving down a stage.
-Optimized playsound()
-Added an attack_self() to sprayers so that you can change the reagent use of them between 5 and 10.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5168 316c924e-a436-60f5-8080-3fe189b3f50e
Fixes issue 1118. duplicating trashbags
Fixes issue 1117. evidence bag issues
Syndie shuttle can now travel to mining and the tcomms sat.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5152 316c924e-a436-60f5-8080-3fe189b3f50e
Removed /obj/item/weapon/camera while I was at it (unused).
New cameras are in modules/paperwork/photography.dm.
Standardised folder and paper naming a leetle bit.
Added a new gamekit sprite, also from BS12.
Path changes!
/obj/item/weapon/camera_test > /obj/item/device/camera
Updated all maps with the path changes, excepting oldstation.dmm.
Updated the changelog.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5116 316c924e-a436-60f5-8080-3fe189b3f50e
-Added a verb to empty the contents of the sprayer onto the floor.
-Admin spawnable only poisonousness apple added.
-Apples will always be eaten in one bite, to balance it, the apple can only hold 20 reagents now.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5104 316c924e-a436-60f5-8080-3fe189b3f50e
-Reduced the chunks of code about minerals in door_assembly.dm
Preeeetty much this commit is just to update all the files to the new path of the minerals. From here, if I can, I'll start changing one by one to remove the huge chunks of code.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5087 316c924e-a436-60f5-8080-3fe189b3f50e
Glowberries have uranium inside them now instead of radium, which caused overlap since glowshrooms also had radium.
Also tweaked cocoa pod sprites a little bit.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5081 316c924e-a436-60f5-8080-3fe189b3f50e
Integrated the sql and standard admin_rank stuff a little. Still needs some work.
Permissions Panel has a sexy floating search bar. The scripts and stylesheets are external files which will be sent to every client at connect, so they can be used in any panel you wish with no additional overheads.
If there are any bugs with the permissions panel (particularly the search bar) please let me know. thanks.
rights2text now has a seperator argument. It defaults to "", but can be any string, for instance "<br>"
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5080 316c924e-a436-60f5-8080-3fe189b3f50e
Click them inhand to make a stomp, and click them with your other hand to make a turn.
Added a cooldown to riot shield bashing, as it does actually seem to cause lag. Kor was right! Who knew?
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5066 316c924e-a436-60f5-8080-3fe189b3f50e
Replaced the vault katana with a replica.
(svn actually managed a map merge, if it's broken please just revert to r5064's map, and replace the katana in the vault with a replica)
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5065 316c924e-a436-60f5-8080-3fe189b3f50e
Wizards can no longer cast spells when muzzled. Fixes issue 843.
You can no longer take bags of holding or mechs to the clown planet. Fixes issue 1061.
Removed the infared sensor from the autolathe construct list. Fixes issue 1092.
- The infared sensor already does nothing, the code for it seems to have been removed ages ago, so there's no harm in doing this.
- Commenting out the define caused a few problems that I couldn't quite figure out. I'll leave it for now with a warning.
Removed the ability for pAI's to set arrest status. Dead players really shouldn't be allowed to grief people like that. Fixes issue 1093.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5060 316c924e-a436-60f5-8080-3fe189b3f50e
- The current, file-based ban system is now a legacy system, the use of which is strongly discouraged for servers, which are constantly online.
- Added a database-based banning system, with a new baning panel, accessible through the 'banning panel' verb. Servers, which use this new banning system, will get the new panel up even if they use the old 'unban panel' or 'display job bans' verbs. These remain there for legacy support purposes. (Panel screenshot below)
- The most notable benefits of the new system are the ability to add offline bans, meaning the person does not have to be connected for a ban to be applied to their name. The second benefit is the ability to look up all previous bans that the person had.
- The major disadvantage is the complete incompatibility between the old and new system, meaning you have to either do a lot of copy-pasting or playing around in code to sync the old system with the new one. Servers upgrading to this system might want to consider a purge of all bans, if they don't want to go through this. Due to the incompatibility, there are no transition tools provided. Please contact me (errorage/rageroro) in #coderbus for help in syncing your database. The /tg/ legacy and database systems have been synced.
- The server configuration defaults to use the legacy system, as the new one requires the database to be set up. Please hash BAN_LEGACY_SYSTEM in config.txt as explained, to use the new system. If the database connection fails, the server reverts to the legacy system.
If any bugs or errors appear with either the legacy or new ban system, please let me know ASAP. The same applies if there are any syncronization problems between the legacy and new system, resulting in banned people unbanned or unbanned people banned.
Panel screenshot:
http://www.kamletos.si/new%20ban%20panel2.PNG
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5034 316c924e-a436-60f5-8080-3fe189b3f50e
- Fixed pulse rifle, energy sword, blackhole and mob spawning
- Fixed 'reload admins' not properly updating the 'admins' list, which made adminwho fail, along with some other things.
- Fixed a bug, which prevented admin from even being loaded properly in some circumstances, in the database admin system.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5027 316c924e-a436-60f5-8080-3fe189b3f50e
- Standardized the database library code
- Deleted a few unused database related files (karma and forum activation), so they won't get in my way later. They work off of no longer existent database tables.
- Made it so the server maintains a constant connection with the database, which is established on world/New() and never broken, until the server ends. If 5 consecutive database connection attempts result in no connection getting established, the server will not attempt any more connections. Made all existing database connections use the global continuous connections. Currently we need two, as we have two databases, but the old database is going to get moved into the new one.
- Fixed the spaghetti-like report in the permissions panel, which happened when someone had many permissions enabled.
- Added database connection reports to display to dream daemon on server startup.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5015 316c924e-a436-60f5-8080-3fe189b3f50e
- Increased the time between vending machine adverts from 60s to 600s = 10 minutes. In addition, I set it so a newly created vending machine assigns a random time for it's first message to be displayed to ensure that all vending machines don't say their message at the same time.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4981 316c924e-a436-60f5-8080-3fe189b3f50e
The path has changed from /obj/item/weapon/mousetrap to /obj/item/device/assembly/mousetrap
Deleted mousetraps.dm, and removed the original define from weapon.dm
Added a new /obj/item proc, on_found(). It's called when pockets are emptied, and whenever someone looks in a storage item. Currently used only by mousetraps and facehuggers~
Updated the map with path changes.
Updated the changelog.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4969 316c924e-a436-60f5-8080-3fe189b3f50e
>tried to make the comments less confusing.
>Removed the procs for rebuilding the lists (they weren't meant to be used and half were broken anyway).
>added a directory. It maps ckey to client like so directory[ckey] = client. It could be used for PMs, banning, and various other admin tools rather than using \ref[]
>var/list/admins is now a list of clients whom are admins.
>var/list/admin_datums is what var/list/admins used to be. A map from ckey -> admin datum
Most of this is so I can add modular admin ranks in a non-horrendous way and fix some existing issues.
>var/list/client_list is now var/list/clients (laziness sorry)
>removed some needless loops and stuff.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4951 316c924e-a436-60f5-8080-3fe189b3f50e
>Replaced dd_text2list, dd_text2listcase, tg_text2listcase and tg_text2list with text2list and text2listEx. text2list will return a list of each and every character in the string if you set separator=""
>added return_file_text(filepath) which returns text from a file after doing some checks: does the file exist? is the file empty? It prints helpful error messages to the world.log if it runs into problems
>Replaced dd_file2list(filepath, seperator) with file2list(filepath, seperator). It just calls text2list(return_file_text(filepath), seperator). rather than copypasta
>Replaced time_stamp() so it's not as retarded
>Lots of the world setup stuff uses file2list now, rather than file2text -> sanity -> text2list
>Added error() warning() testing() procs. These print messages to world.log with a prefix. e.g. ## ERROR: msg.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4948 316c924e-a436-60f5-8080-3fe189b3f50e