Merge pull request #12575 from GhostActual/tg-port-1

The Grand /TG Port - Part 1
This commit is contained in:
Casey
2022-04-02 23:24:08 -04:00
committed by GitHub
10 changed files with 76 additions and 11 deletions

View File

@@ -13,7 +13,7 @@
#define isitem(D) istype(D, /obj/item)
#define isradio(A) istype(A, /obj/item/device/radio)
#define isradio(A) istype(A, /obj/item/device/radio)
#define isairlock(A) istype(A, /obj/machinery/door/airlock)
@@ -23,6 +23,8 @@
#define ismecha(A) istype(A, /obj/mecha)
#define isstructure(A) istype(A, /obj/structure)
//---------------
//#define isarea(D) istype(D, /area) //Built in

View File

@@ -1,3 +1,6 @@
/*
* Misc
*/
/datum/crafting_recipe/cloth
name = "Cloth bolt"
result = /obj/item/stack/material/cloth
@@ -13,9 +16,8 @@
category = CAT_PRIMAL
/*
* Clothing
* Primitive Clothing
*/
/datum/crafting_recipe/primitive_clothes
name = "primitive clothes"
result = /obj/item/clothing/under/primitive

View File

@@ -702,7 +702,7 @@
desc = "Spooky!"
gender = PLURAL
icon = 'icons/obj/wizard.dmi'
icon_state = "ectoplasm"
icon_state = "ectoplasm2"
/obj/item/weapon/research
name = "research debugging device"

View File

@@ -1,8 +1,11 @@
GLOBAL_LIST_BOILERPLATE(all_mops, /obj/item/weapon/mop)
/*
* Mop
*/
/obj/item/weapon/mop
desc = "The world of janitalia wouldn't be complete without a mop."
name = "mop"
desc = "The world of janitalia wouldn't be complete without a mop."
icon = 'icons/obj/janitor.dmi'
icon_state = "mop"
force = 3.0
@@ -39,3 +42,38 @@ GLOBAL_LIST_BOILERPLATE(all_mops, /obj/item/weapon/mop)
if(istype(I, /obj/item/weapon/mop) || istype(I, /obj/item/weapon/soap))
return
..()
/*
* Advanced Mop
*/
/obj/item/weapon/mop/advanced
name = "advanced mop"
desc = "No stain will go unclean."
icon = 'icons/obj/janitor.dmi'
icon_state = "adv_mop"
force = 3.5
throwforce = 10.5
throw_speed = 4
throw_range = 10
w_class = ITEMSIZE_NORMAL
flags = NOCONDUCT
attack_verb = list("mopped", "bashed", "bludgeoned", "whacked")
/obj/item/weapon/mop/advanced/New()
create_reagents(30)
..()
/obj/item/weapon/mop/advanced/afterattack(atom/A, mob/user, proximity)
if(!proximity) return
if(istype(A, /turf) || istype(A, /obj/effect/decal/cleanable) || istype(A, /obj/effect/overlay) || istype(A, /obj/effect/rune))
if(reagents.total_volume < 1)
to_chat(user, "<span class='notice'>Your mop is dry!</span>")
return
user.visible_message("<span class='warning'>[user] begins to clean \the [get_turf(A)].</span>")
if(do_after(user, 20))
var/turf/T = get_turf(A)
if(T)
T.clean(src, user)
to_chat(user, "<span class='notice'>You have finished mopping!</span>")

View File

@@ -1,7 +1,16 @@
/datum/category_item/catalogue/fauna/skeleton
name = "Alien Wildlife - Space Skeleton"
desc = "A creature consisting primarily of what appears to be bones with no apparent connective tissue, muscle, or organs.\
It is not clear at all how this creature even operates."
desc = "Classification: Sentientis osseous\
<br><br>\
No one, not scientist or wildlife expert can properly explain these spacial skeletons with any solid \
certanty. They are not human, despite the clear simularites to a human's skeleton, nor are they made of \
calcium like normal bones. Samples taken from the corpses of these strange creatures have yieled little \
in the form of answers and have only raised more questions with regards to their general existence. \
Scientist are still studying these beings, a difficult task as they are difficult to come by in the \
vaccum of space. The only information that scientist are able to gather about these so-called 'Space \
Skeletons' as people have come to call them is that their structure is comprised of a strange cell \
structure that is similar to plants - likely because these creatures are known to feed of the UV \
rays of nearby stars."
value = CATALOGUER_REWARD_MEDIUM
/mob/living/simple_mob/vore/alienanimals/skeleton
@@ -67,6 +76,11 @@
vore_default_contamination_color = "grey"
vore_default_item_mode = IM_DIGEST
/mob/living/simple_mob/vore/alienanimals/skeleton/alt
icon_state = "altskeleton"
icon_living = "altskeleton"
icon_dead = "altskeleton_dead"
/datum/say_list/skeleton
speak = list("Nyeh heh heeeh","NYAAAAHHHH", "Books are the real treasures of the world!", "Why are skeletons so calm? Because nothing gets under their skin.","When does a skeleton laugh? When someone tickels their funny bone!","What is a skeletons favorite mode of transport? A scare-plane.", "What did the skeleton say to the vampire? 'You suck.'","What is a skeletons favorite thing to do with their cell phone? Take skelfies.", "How did the skeleton know the other skeleton was lying? He could see right through him.","Whats a skeletons least favorite room in the house? The living room.", "How much does an elephant skeleton weigh? Skele-tons.", "Why do skeletons drink so much milk? Its good for the bones!", "Where do bad jokes about skeletons belong? In the skelebin.","What does a skeleton use to cut through objects? A shoulder blade.", "What kind of jokes do skeletons tell? Humerus ones.")
emote_see = list("spins its head around", "shuffles","shambles","practices on the xylophone","drinks some milk","looks at you. Its hollow, bottomless sockets gaze into you greedily.")

View File

@@ -71,7 +71,7 @@
"rad" = 100
)
loot_list = list(/obj/item/weapon/ore/diamond = 100)
loot_list = list(/obj/item/weapon/ore/diamond = 100, /obj/item/weapon/ectoplasm = 3)
speak_emote = list("rumbles")
@@ -101,14 +101,14 @@
/mob/living/simple_mob/vore/alienanimals/space_ghost/shoot(atom/A) //We're shooting ghosts at people and need them to have the same faction as their parent, okay?
if(!projectiletype)
return
return
if(A == get_turf(src))
return
face_atom(A)
if(reload_count >= reload_max)
return
var/mob/living/simple_mob/P = new projectiletype(loc, src)
if(!P)
return
if(needs_reload)

View File

@@ -80,4 +80,13 @@
req_tech = list(TECH_ILLEGAL = 2, TECH_MATERIAL = 2)
materials = list(MAT_STEEL = 4000, MAT_GLASS = 4000)
build_path = /obj/item/device/binoculars/scope
sort_string = "TBAAD"
sort_string = "TBAAD"
/datum/design/item/general/advmop
name = "advanced mop"
desc = "An advanced mop with pressured water jets that break away the toughest stains."
id = "advmop"
req_tech = list(TECH_MATERIAL = 3, TECH_ENGINEERING = 5, TECH_BIO = 1)
materials = list(MAT_STEEL = 5000, MAT_GLASS = 2000, MAT_GOLD = 1000)
build_path = /obj/item/weapon/mop/advanced
sort_string = "TBAAE"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

After

Width:  |  Height:  |  Size: 95 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB