mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-24 04:27:35 +01:00
fix cooking step failures (#30349)
* fix cooking step failures * a timing issue one hopes
This commit is contained in:
@@ -73,6 +73,11 @@
|
||||
puppet.next_click = world.time
|
||||
puppet.next_move = world.time
|
||||
|
||||
/datum/test_puppeteer/proc/alt_click_on(target, params)
|
||||
var/plist = params2list(params)
|
||||
plist["alt"] = TRUE
|
||||
click_on(target, list2params(plist))
|
||||
|
||||
/datum/test_puppeteer/proc/spawn_mob_nearby(mob_type)
|
||||
for(var/turf/T in RANGE_TURFS(1, puppet))
|
||||
if(!T.is_blocked_turf())
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#include "test_apc_construction.dm"
|
||||
#include "test_components.dm"
|
||||
#include "test_config_sanity.dm"
|
||||
#include "test_cooking.dm"
|
||||
#include "test_crafting_lists.dm"
|
||||
#include "test_dynamic_budget.dm"
|
||||
#include "test_elements.dm"
|
||||
|
||||
@@ -0,0 +1,53 @@
|
||||
/datum/cooking/recipe/test_soylent
|
||||
container_type = /obj/item/reagent_containers/cooking/pot
|
||||
product_type = /obj/item/food/soylentgreen
|
||||
steps = list(
|
||||
PCWJ_ADD_ITEM(/obj/item/food/meat/human),
|
||||
PCWJ_ADD_ITEM(/obj/item/food/meat/human),
|
||||
PCWJ_ADD_REAGENT("water", 10),
|
||||
PCWJ_USE_STOVE(J_MED, 1 SECONDS),
|
||||
)
|
||||
appear_in_default_catalog = FALSE
|
||||
|
||||
/datum/game_test/room_test/cooking/Run()
|
||||
var/datum/test_puppeteer/player = new(src)
|
||||
player.puppet.name = "Player"
|
||||
|
||||
// Burger
|
||||
var/obj/structure/table/table = player.spawn_obj_nearby(__IMPLIED_TYPE__, SOUTH)
|
||||
var/obj/item/reagent_containers/cooking/board/board = player.spawn_obj_nearby(__IMPLIED_TYPE__, SOUTH)
|
||||
player.spawn_obj_in_hand(/obj/item/food/bun)
|
||||
player.click_on(board)
|
||||
TEST_ASSERT_LAST_CHATLOG(player, "You add the bun")
|
||||
player.spawn_obj_in_hand(/obj/item/food/meat/patty)
|
||||
player.click_on(board)
|
||||
TEST_ASSERT_LAST_CHATLOG(player, "You add the patty")
|
||||
player.spawn_obj_in_hand(/obj/item/food/grown/lettuce)
|
||||
player.click_on(board)
|
||||
TEST_ASSERT_LAST_CHATLOG(player, "You finish cooking with the cutting board")
|
||||
player.alt_click_on(board)
|
||||
TEST_ASSERT(locate(/obj/item/food/burger) in get_turf(board), "could not find completed burger")
|
||||
|
||||
// Soylent
|
||||
var/obj/machinery/cooking/stovetop/stove = player.spawn_obj_nearby(__IMPLIED_TYPE__, EAST)
|
||||
var/obj/item/reagent_containers/cooking/pot/pot = player.spawn_obj_in_hand(__IMPLIED_TYPE__)
|
||||
player.click_on(table)
|
||||
var/obj/item/food/meat/human/meat = player.spawn_obj_in_hand(__IMPLIED_TYPE__)
|
||||
player.click_on(pot)
|
||||
TEST_ASSERT_LAST_CHATLOG(player, "You add [meat]")
|
||||
player.spawn_obj_in_hand(/obj/item/food/meat/human)
|
||||
player.click_on(pot)
|
||||
var/obj/item/reagent_containers/glass/beaker/beaker = player.spawn_obj_in_hand(__IMPLIED_TYPE__)
|
||||
beaker.reagents.add_reagent("water", 10)
|
||||
player.click_on(pot)
|
||||
player.put_away(beaker)
|
||||
player.click_on(pot)
|
||||
player.click_on(stove, "icon-x=18&icon-y=18")
|
||||
var/surface_idx = stove.clickpos_to_surface(list("icon-x" = 18, "icon-y" = 18))
|
||||
var/datum/cooking_surface/surface = stove.surfaces[surface_idx]
|
||||
surface.temperature = J_MED
|
||||
surface.turn_on(player.puppet)
|
||||
sleep(3 SECONDS)
|
||||
surface.turn_off(player.puppet)
|
||||
player.alt_click_on(stove, "icon-x=18&icon-y=18")
|
||||
TEST_ASSERT(locate(/obj/item/food/soylentgreen) in stove.loc, "could not find complete soylent")
|
||||
Reference in New Issue
Block a user