Commit Graph

23 Commits

Author SHA1 Message Date
Incoming 3ef306fc4e Adds large cardboard boxes to the game, constructable from five sheets of cardboard.
Cardboard boxes are closets that:
*Can only carry a single person
*Are easy to destroy
*Are flammable
*Can't be welded shut

They can also can be used for more "tactical" purposes, at the same speed as walking.

Takes the opportunity to remove some object unfriendly coding.

If this is accepted they'll be a pull a little later to replace a few closets on the maps with boxes (or maybe code to have generic closets on the map to occasionally spawn as boxes instead).
2015-09-10 19:29:19 -04:00
phil235 7b2262e729 Fixes bodybag not visually opening or closing. 2015-08-23 18:14:40 +02:00
bgobandit 1f3440649a fixes my shit 2015-08-08 19:49:09 -04:00
bgobandit ab9668dd3d Moves update_icon(). Adds crayons. 2015-07-24 09:38:13 -04:00
bgobandit 3ab197f80f Body bag sprites now update their tag overlay properly. 2015-07-23 20:20:55 -04:00
Jordie0608 37277f66e7 pre-map compile 2015-04-08 15:40:41 +10:00
MrPerson 9038fb15af Code cleanup
Removed a bunch of unused or hardly used vars on /mob and /atom/movable.
Added defines for mob/living/var/mob_size so it's not using magic numbers.
2015-03-13 10:41:00 -07:00
Remie Richards 5fc7af7fbf attackby() now has an argument containing the parameters of the click that called it. Items placed on tables now center their icon where the user clicked. this is NOT true for racks, since racks look organised in their sprite.
Items reset their pixel_x and pixel_y values on pickup.
2015-02-19 13:02:43 +00:00
tkdrg b852aa41ea Replaces a bunch of input() with stripped_input()
Some of these were exploitable for XSS, as well.
2015-01-11 19:02:53 -03:00
phil235 c2fcd21499 Adding bluespace bodybags. Adding changelog. 2014-10-21 17:27:40 +02:00
phil235 56c853f9d6 Merge branch 'master' of https://github.com/tgstation/-tg-station into bodybagfix1
Conflicts:
	code/modules/mob/living/simple_animal/friendly/mouse.dm
2014-10-21 15:58:39 +02:00
phil235 cd78c2b067 Adding puppies and kittens to the small mob category.
Increasing mob_storage_capacity for closet and bodybag to 4 and 6 respectively.
2014-10-13 19:03:56 +02:00
phil235 619a38ad89 Adds the ability to collapse rollerbed (from baystation). Fixes being able to pick up pill bottles and fold bodybags through windows via click drag. 2014-10-13 17:17:53 +02:00
phil235 8e87ebaa1f Fixing a silly typo. 2014-10-12 19:07:41 +02:00
phil235 36cbf06ed9 closets and its children can no longer contain a near infinite amount of mobs.
Adding a mob_size var to mob/living . All closets can still contain the same amount of small sized mobs as before(mouse, parrot,pAI, viscerator, lizard, chick), but they can no longer contain large mobs (alien emperess, blobbernaut, juggernaut, hostile tree, goliath), and they can contain a few human sized mobs (three for bodybags, two for closets and other children).
2014-10-12 18:46:56 +02:00
Firecage 24b18fad93 Absolute paths for item files. 2014-08-07 23:02:43 +02:00
MrPerson 9eee3e5067 First pass at a qdel() garbage collection system for tgstation
Works pretty well. If it can't GC something, it'll just del() it and be done.
Speed is amazing, holy shit.

New procs you should be aware of:
qdel(atom/movable) - sets up an object for garbage collection. Call this rather than del(atom/movable).
atom/movable/Destroy() - called right before the object is GC'd, so it still has a loc. Also called if the object is del()'d.
new controller - garbage.dm has all the details on this. Basically it nulls all references on GC'd objects and force del() them if necessary.
Generally speaking, objects should use Destroy() for behavior prior to deletion rather than Del(). You should also always call the parent so the object gets the right gc_destroyed var set.

ISSUES:
Tries to GC mobs atm. This actually works for new players, not so much for humans/monkies/simple_animals/anything. I'm guessing it needs to clear out their mind and HUD and maybe other things.
Gibbing is really bugged. It works, but the overlays just sit there for awhile and ugh. I'm very tempted just to del() mob/living and mob/camera and call it a day.
qdel() equipment doesn't unequip the item.
Pipes don't generally GC correctly. Debugging suggests they get referenced in many pipenets and that isn't cleared properly. However some do work fine. Need assistance here.
Bots don't GC, probably in the radio controller.
Lots of other shit doesn't GC but it's hard to find them because of the pipe spam.
I think I'm calling Destroy() twice by accident.
2014-02-23 14:55:12 -08:00
Pete Goodfellow 7e69161221 Standardises bodybag.dm, including text styling. Updates the max name length of a label. Fixes folded bodybags not fitting in boxes. Bodybags now go into hands when folded, if possible. 2013-04-04 00:43:09 +01:00
petethegoat@gmail.com 11b17c4442 Committing suomynonAyletamitlU's storage item standardisation commit: http://forums.nanotrasen.com/viewtopic.php?f=16&t=11746
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
2013-01-08 19:11:56 +00:00
rockdtben@gmail.com 169c96db1b Too remove potential excessive garbage collection per tick. We will be reusing lists for overlays instead of deleting and creating them.
the .Cut() proc on a list will empty a list by default. This also will set the len to 0.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5465 316c924e-a436-60f5-8080-3fe189b3f50e
2013-01-04 15:11:06 +00:00
petethegoat@gmail.com e30b79a7a4 Removed /obj/item/weapon/bodybag as it wasn't used, and updated the descriptions of the folded bodybag and normal bodybag.
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5207 316c924e-a436-60f5-8080-3fe189b3f50e
2012-11-27 12:56:44 +00:00
johnsonmt88@gmail.com 28aabc9810 More file structure stuff!
Cleaned up the files themselves.
Everything in code/game/objects should now be in proper files or places with the exception of the files in the /weapons/ sub-folder.

There's two instances of me not following the exact file structure.
- /obj/item/brain has been moved to a file in mob/living/carbon/brain
- /obj/item/clothing/mask/facehugger has been moved into mob/living/carbon/alien/special
Both of these may not make sense according to the object structure, but they do make sense logically. If it's a problem just move them.

Next up: Finish the files in the weapon folder, then start moving defines down.


My god I hope I havent broken everything.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4547 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-26 03:32:58 +00:00
johnsonmt88@gmail.com d36387607f More file structure stuff.
- The folders themselves are now finished
- Next I'll go through each file and organize them
- Lastly I'll start pulling the object definitions out of /code/defines/ and put them into their respective files.

**Note to committers**
Make sure the .dme file updates when you update to this revision. If necessary delete the .dme and svn-update.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4546 316c924e-a436-60f5-8080-3fe189b3f50e
2012-08-26 01:20:02 +00:00