Skip to content
This repository was archived by the owner on May 22, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
103 commits
Select commit Hold shift + click to select a range
0a6bdda
Add files via upload
nmajask May 11, 2021
f2617bd
Merge branch 'yogstation13:master' into master
nmajask May 12, 2021
ecae62c
Merge branch 'yogstation13:master' into master
nmajask May 14, 2021
be6c0e1
changed sigtech, tourist, and clerk icons
nmajask May 14, 2021
8894bf5
Merge branch 'yogstation13:master' into master
nmajask May 17, 2021
2d5f354
Some more icon changes
nmajask May 17, 2021
04c2539
Merge branch 'yogstation13:master' into master
nmajask May 17, 2021
2530bdf
applied grimm-hollowknight requested changes
nmajask May 19, 2021
7239268
ah, so thats why you reverted that change
nmajask May 28, 2021
50139ca
why cant i merge upstream
nmajask May 28, 2021
ccd6514
Merge branch 'yogstation13:master' into master
nmajask May 28, 2021
c741bab
Adds brig physicians
nmajask Jul 14, 2021
0613fed
Fixed some stuff
nmajask Jul 14, 2021
53cc9cb
Removed Brig Physician's ability to be an antag
nmajask Jul 15, 2021
73aa83f
Many requested changes
nmajask Jul 16, 2021
308897c
Another bunch of changes
nmajask Jul 19, 2021
f3110a8
Merge branch 'master' into brigphys
nmajask Jul 21, 2021
919c2d5
Might fix one of the merge conflicts
nmajask Jul 21, 2021
7a36f46
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask Jul 22, 2021
cdc31b3
Should finally bring this back to a functional state
nmajask Jul 22, 2021
c4f1717
Thought I fixed this
nmajask Jul 25, 2021
f63974c
Should fix wejengin2's issues with the maps
nmajask Jul 30, 2021
f9ab97f
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask Jul 30, 2021
a734857
Bows, bamboo, and bones
nmajask Apr 8, 2022
f29fad4
Before i get yelled at
nmajask Apr 8, 2022
00377b2
ack
nmajask Apr 8, 2022
91e1d56
Some sprites I forgot to save
nmajask Apr 8, 2022
29f5143
Syndicate bow
nmajask Apr 8, 2022
fa38fc7
Map changes
nmajask Apr 8, 2022
4f577ad
Other bee ports
nmajask Apr 8, 2022
aecf712
Fixes invisible bows in Fastdmm2 and a build error
nmajask Apr 8, 2022
9f4b668
oops
nmajask Apr 8, 2022
fe5c781
Some tweeks/fixes
nmajask Apr 8, 2022
56a677e
More stuff
nmajask Apr 14, 2022
3f77b18
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask Apr 14, 2022
a43b66f
merg
nmajask Apr 14, 2022
4f6680a
oops
nmajask Apr 14, 2022
3085d93
aaa
nmajask May 12, 2022
5bc32df
Gramger
nmajask May 12, 2022
b0396f5
Merge branch 'yogstation13-master' into tribal-crafting-port
nmajask May 12, 2022
3296724
Merge branch 'tribal-crafting-port' of https://github.com/nmajask/Yog…
nmajask May 12, 2022
f9ffd83
Revert "Merge branch 'yogstation13-master' into tribal-crafting-port"
nmajask May 12, 2022
9c3449b
Revert "Merge branch 'tribal-crafting-port' of https://github.com/nma…
nmajask May 12, 2022
d410b18
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask May 12, 2022
202d432
Fix
nmajask May 12, 2022
06fb7a7
More fix
nmajask May 12, 2022
2e0e2bf
removes some stuff
nmajask May 13, 2022
c7fea6c
fixed dart guns
nmajask May 13, 2022
af5dd5a
Embed stuff
nmajask May 13, 2022
84b15c5
Update code/game/objects/items/stacks/sheets/sheet_types.dm
nmajask May 15, 2022
f5ff20f
ADMIN LOG: A
nmajask May 16, 2022
65c4335
fixes
nmajask May 16, 2022
bde25e3
pain
nmajask May 16, 2022
fd5c222
less debug
nmajask May 16, 2022
f9b4db2
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask May 16, 2022
fe76160
Readd the changes
nmajask May 16, 2022
b8c8ed5
balance
nmajask May 17, 2022
6516818
hardlight bow stuff
nmajask May 17, 2022
29d0716
bamboo
nmajask May 17, 2022
502b5e9
starting recipes and stuff
nmajask May 17, 2022
54640db
More clothes
nmajask May 18, 2022
51268bf
Adds the clothing to the map
nmajask May 18, 2022
2b52f5d
balance
nmajask May 18, 2022
68d5499
Merge branch 'tribal-crafting-port' of https://github.com/nmajask/Yog…
nmajask May 18, 2022
4b64a7d
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask May 18, 2022
dc1c74e
Slug fix
nmajask May 18, 2022
45c004e
MELEE!
nmajask May 19, 2022
395f3a0
Crossbows
nmajask May 19, 2022
512fcbe
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
5f40b55
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
7725a79
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
63dd262
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
fcbf0bb
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
ea73cb7
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
55aa177
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
bc8b096
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
7c2ed0a
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
7587629
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
52c481a
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
da1b7b6
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
7b6a58e
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
f342213
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
f431c1e
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
2152010
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
f9437e5
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
31612c7
Update code/modules/projectiles/projectile/reusable/arrow.dm
nmajask May 20, 2022
3b8fe70
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask May 21, 2022
85f4123
Merge branch 'master' into tribal-crafting-port
nmajask May 22, 2022
b38061e
Hardlight bow arrow embedding
nmajask May 22, 2022
9bf0c1b
Ashwalker nest tweaks
nmajask May 22, 2022
0d7389d
Balance
nmajask May 23, 2022
66da51d
Bow fixes and minor balance changes
nmajask May 27, 2022
c89608e
Im dum
nmajask May 27, 2022
fef82cb
fix
nmajask May 28, 2022
eede6a1
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask May 28, 2022
5506890
Update code/modules/projectiles/boxes_magazines/_box_magazine.dm
JamieD1 May 28, 2022
3757f3d
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask Jun 8, 2022
4409195
reorganized crafting menu
nmajask Jun 8, 2022
4e8bbda
huh
nmajask Jun 8, 2022
624026d
fex
nmajask Jun 9, 2022
eda904c
removed broken code
nmajask Jun 11, 2022
c1ca565
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask Jun 11, 2022
866bc8f
Merge branch 'master' of https://github.com/yogstation13/Yogstation i…
nmajask Jun 11, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
445 changes: 241 additions & 204 deletions _maps/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm

Large diffs are not rendered by default.

3 changes: 3 additions & 0 deletions code/__DEFINES/construction.dm
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,10 @@
#define CAT_MISC "Misc"
#define CAT_PRIMAL "Tribal"
#define CAT_STRUCTURES "Structures"
#define CAT_APPAREL "Apparel"
#define CAT_CLOTHING "Clothing"
#define CAT_ARMOR "Armor"
#define CAT_EQUIPMENT "Equipment"
#define CAT_FOOD "Foods"
#define CAT_BREAD "Breads"
#define CAT_BURGER "Burgers"
Expand Down
142 changes: 142 additions & 0 deletions code/datums/components/crafting/antag.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
///////////////////////////////////////////////////
/// Antag recipes ///
// see granters.dm - at the top for easy viewing //
///////////////////////////////////////////////////

// Weapons
/datum/crafting_recipe/baseball_bat
name = "Baseball Bat"
result = /obj/item/melee/baseball_bat
reqs = list(/obj/item/stack/sheet/mineral/wood = 30
)
tools = list(TOOL_HATCHET) //to carve the wood into shape
category = CAT_WEAPONRY
subcategory = CAT_WEAPON
always_availible = FALSE

/datum/crafting_recipe/lance
name = "Explosive Lance (Grenade)"
result = /obj/item/twohanded/spear
reqs = list(/obj/item/twohanded/spear = 1,
/obj/item/grenade = 1)
blacklist = list(/obj/item/twohanded/spear/explosive,
/obj/item/grenade/flashbang)
parts = list(/obj/item/twohanded/spear = 1,
/obj/item/grenade = 1)
time = 1.5 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_WEAPON
always_availible = FALSE

/datum/crafting_recipe/knifeboxing
name = "Knife-boxing Gloves"
result = /obj/item/clothing/gloves/knifeboxing
reqs = list(/obj/item/clothing/gloves/boxing = 1,
/obj/item/kitchen/knife = 2)
time = 10 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_WEAPON
always_availible = FALSE

/datum/crafting_recipe/pipebomb
name = "Pipe Bomb"
result = /obj/item/grenade/pipebomb
reqs = list(/datum/reagent/fuel = 50,
/obj/item/stack/cable_coil = 1,
/obj/item/assembly/igniter = 1,
/obj/item/pipe = 1,
/obj/item/assembly/mousetrap = 1)
tools = list(TOOL_WELDER, TOOL_WRENCH, TOOL_WIRECUTTER)
time = 1.5 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_WEAPON
always_availible = FALSE //This was such a bad idea

/datum/crafting_recipe/flamethrower
name = "Flamethrower"
result = /obj/item/flamethrower
reqs = list(/obj/item/weldingtool = 1,
/obj/item/assembly/igniter = 1,
/obj/item/stack/rods = 1)
parts = list(/obj/item/assembly/igniter = 1,
/obj/item/weldingtool = 1)
tools = list(TOOL_SCREWDRIVER)
time = 1 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_WEAPON
always_availible = FALSE

/datum/crafting_recipe/makeshiftpistol
name = "Makeshift Pistol"
result = /obj/item/gun/ballistic/automatic/pistol/makeshift
reqs = list(/obj/item/weaponcrafting/receiver = 1,
/obj/item/stack/sheet/metal = 4,
/obj/item/stack/rods = 2,
/obj/item/stack/tape = 3)
tools = list(TOOL_SCREWDRIVER)
time = 12 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_WEAPON
always_availible = FALSE

/datum/crafting_recipe/makeshiftsuppressor
name = "Makeshift Suppressor"
result = /obj/item/suppressor/makeshift
reqs = list(/obj/item/reagent_containers/food/drinks/soda_cans = 1,
/obj/item/stack/rods = 1,
/obj/item/stack/sheet/cloth = 2,
/obj/item/stack/tape = 1)
time = 12 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_WEAPON
always_availible = FALSE

// Ammo

/datum/crafting_recipe/makeshiftmagazine
name = "Makeshift Pistol Magazine (10mm)"
result = /obj/item/ammo_box/magazine/m10mm/makeshift
reqs = list(/obj/item/stack/sheet/metal = 2,
/obj/item/stack/tape = 2)
time = 12 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_AMMO
always_availible = FALSE

/datum/crafting_recipe/bola_arrow
name = "Bola arrow"
result = /obj/item/ammo_casing/caseless/arrow/bola
time = 3 SECONDS
reqs = list(/obj/item/ammo_casing/caseless/arrow = 1,
/obj/item/stack/sheet/silk = 1,
/obj/item/restraints/legcuffs/bola = 1)
parts = list(/obj/item/ammo_casing/caseless/arrow = 1, /obj/item/restraints/legcuffs/bola = 1)
category = CAT_WEAPONRY
subcategory = CAT_AMMO
always_availible = FALSE

/*
/datum/crafting_recipe/explosive_arrow
name = "Explosive arrow"
result = /obj/item/ammo_casing/caseless/arrow/explosive
time = 3 SECONDS
reqs = list(/obj/item/ammo_casing/caseless/arrow = 1,
/obj/item/stack/sheet/silk = 1,
/obj/item/grenade = 1)
parts = list(/obj/item/ammo_casing/caseless/arrow = 1, /obj/item/grenade = 1)
category = CAT_WEAPONRY
subcategory = CAT_AMMO
always_availible = FALSE
*/

/datum/crafting_recipe/flaming_arrow
name = "Flaming arrow"
result = /obj/item/ammo_casing/caseless/arrow/flaming
time = 3 SECONDS
reqs = list(/obj/item/ammo_casing/caseless/arrow = 1,
/obj/item/stack/sheet/cloth = 1,
/datum/reagent/fuel = 10)
parts = list(/obj/item/ammo_casing/caseless/arrow = 1)
category = CAT_WEAPONRY
subcategory = CAT_AMMO
always_availible = FALSE
75 changes: 47 additions & 28 deletions code/datums/components/crafting/crafting.dm
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,11 @@
CAT_SPAGHETTI,
),
CAT_DRINK = CAT_NONE,
CAT_CLOTHING = CAT_NONE,
CAT_APPAREL = list(
CAT_CLOTHING,
CAT_ARMOR,
CAT_EQUIPMENT
),
)

var/cur_category = CAT_NONE
Expand All @@ -65,28 +69,40 @@



/datum/component/personal_crafting/proc/check_contents(datum/crafting_recipe/R, list/contents)
/datum/component/personal_crafting/proc/check_contents(mob/user, datum/crafting_recipe/R, list/contents)
var/list/item_instances = contents["instances"]
contents = contents["other"]
main_loop:
for(var/A in R.reqs)
var/needed_amount = R.reqs[A]
for(var/B in contents)
if(ispath(B, A))
if (R.blacklist.Find(B))
continue
if(contents[B] >= R.reqs[A])
continue main_loop
else
needed_amount -= contents[B]
if(needed_amount <= 0)
continue main_loop
else
continue
return 0
for(var/A in R.chem_catalysts)
if(contents[A] < R.chem_catalysts[A])
return 0
return 1

var/list/requirements_list = list()

// Process all requirements
for(var/requirement_path in R.reqs)
// Check we have the appropriate ammount avalible in the contents list
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Beestation illiteracy in the comments section

var/needed_amount = R.reqs[requirement_path]
for(var/content_item_path in contents)
// Right path and not blacklisted
if(!ispath(content_item_path, requirement_path) || R.blacklist.Find(requirement_path))
continue

needed_amount -= contents[content_item_path]
if(needed_amount <= 0)
break

if(needed_amount > 0)
return FALSE

// Store the instances of what we will use for R.check_requirements() for requirement_path
var/list/instances_list = list()
for(var/instance_path in item_instances)
if(ispath(instance_path in item_instances))
instances_list += item_instances[instance_path]

requirements_list[requirement_path] = instances_list

for(var/requirement_path in R.chem_catalysts)
if(contents[requirement_path] < R.chem_catalysts[requirement_path])
return FALSE
return R.check_requirements(user, requirements_list)

/datum/component/personal_crafting/proc/get_environment(mob/user)
. = list()
Expand All @@ -108,11 +124,14 @@
. = list()
.["tool_behaviour"] = list()
.["other"] = list()
.["instances"] = list()
for(var/obj/item/I in get_environment(user))
if(I.flags_1 & HOLOGRAM_1)
continue
if(I.status_traits && HAS_TRAIT(I,TRAIT_NODROP))
if(I.status_traits && HAS_TRAIT(I,TRAIT_NODROP) || I.flags_1 & HOLOGRAM_1)
continue
if(.["instances"][I.type])
.["instances"][I.type] += I
else
.["instances"][I.type] = list(I)
if(istype(I, /obj/item/stack))
var/obj/item/stack/S = I
.["other"][I.type] += S.amount
Expand Down Expand Up @@ -163,11 +182,11 @@
var/send_feedback = 1
if(HAS_TRAIT(user, TRAIT_CRAFTY))
R.time *= 0.75
if(check_contents(R, contents))
if(check_contents(user, R, contents))
if(check_tools(user, R, contents))
if(do_after(user, R.time, user))
contents = get_surroundings(user)
if(!check_contents(R, contents))
if(!check_contents(user, R, contents))
return ", missing component."
if(!check_tools(user, R, contents))
return ", missing tool."
Expand Down Expand Up @@ -342,7 +361,7 @@

if((R.category != cur_category) || (R.subcategory != cur_subcategory))
continue
craftability["[REF(R)]"] = check_contents(R, surroundings)
craftability["[REF(R)]"] = check_contents(user, R, surroundings)

data["craftability"] = craftability
return data
Expand Down
6 changes: 6 additions & 0 deletions code/datums/components/crafting/guncrafting.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,9 @@
desc = "A classic rifle stock that doubles as a grip, roughly carved out of wood."
icon = 'icons/obj/improvised.dmi'
icon_state = "riflestock"

/obj/item/weaponcrafting/silkstring
name = "silkstring"
desc = "A long piece of Silk that looks like a cable coil."
icon = 'icons/obj/improvised.dmi'
icon_state = "silkstring"
64 changes: 10 additions & 54 deletions code/datums/components/crafting/makeshift.dm
Original file line number Diff line number Diff line change
@@ -1,57 +1,3 @@
//////////
// GUNS //
//////////

/datum/crafting_recipe/makeshiftpistol
name = "Makeshift Pistol"
result = /obj/item/gun/ballistic/automatic/pistol/makeshift
reqs = list(/obj/item/weaponcrafting/receiver = 1,
/obj/item/stack/sheet/metal = 4,
/obj/item/stack/rods = 2,
/obj/item/stack/tape = 3)
tools = list(TOOL_SCREWDRIVER)
time = 12 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_WEAPON
always_availible = FALSE

/datum/crafting_recipe/makeshiftmagazine
name = "Makeshift Pistol Magazine (10mm)"
result = /obj/item/ammo_box/magazine/m10mm/makeshift
reqs = list(/obj/item/stack/sheet/metal = 2,
/obj/item/stack/tape = 2)
time = 12 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_AMMO
always_availible = FALSE

/datum/crafting_recipe/makeshiftsuppressor
name = "Makeshift Suppressor"
result = /obj/item/suppressor/makeshift
reqs = list(/obj/item/reagent_containers/food/drinks/soda_cans = 1,
/obj/item/stack/rods = 1,
/obj/item/stack/sheet/cloth = 2,
/obj/item/stack/tape = 1)
time = 12 SECONDS
category = CAT_WEAPONRY
subcategory = CAT_WEAPON
always_availible = FALSE

/datum/crafting_recipe/gauss
name = "Makeshift gauss rifle"
reqs = list(/obj/item/stock_parts/cell = 1,
/obj/item/weaponcrafting/stock = 1,
/obj/item/weaponcrafting/receiver = 1,
/obj/item/stack/tape = 1,
/obj/item/stack/rods = 4,
/obj/item/stack/cable_coil = 10)
tools = list(TOOL_SCREWDRIVER,TOOL_WELDER,TOOL_WRENCH)
result = /obj/item/gun/ballistic/gauss
time = 12
category = CAT_WEAPONRY
subcategory = CAT_WEAPON


///////////
// TOOLS //
///////////
Expand Down Expand Up @@ -141,3 +87,13 @@
time = 12 SECONDS
category = CAT_TOOLS
always_availible = FALSE

/datum/crafting_recipe/makeshiftid
name = "Makeshift ID"
result = /obj/item/card/id/makeshift
reqs = list(/obj/item/stack/sheet/cardboard = 2,
/obj/item/stack/tape = 1,
/obj/item/pen = 1)
tools = list(TOOL_WIRECUTTER)
time = 30
category = CAT_MISC
Loading