Working on fixing scripting bugs'
This commit is contained in:
parent
7dadfd8ed8
commit
8e745ce0cd
@ -4138,6 +4138,24 @@
|
|||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"id": "teacher_dialog008",
|
||||||
|
"start": "line_1",
|
||||||
|
"nodes": [
|
||||||
|
{
|
||||||
|
"id": "line_1",
|
||||||
|
"type": "Line",
|
||||||
|
"speaker": "Аида Джаныбековна",
|
||||||
|
"portrait": "resources/dialogue/portrait_teacher.png",
|
||||||
|
"text": "Бекзат, я сейчас занята, не мешай мне!",
|
||||||
|
"next": "end_1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": "end_1",
|
||||||
|
"type": "End"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"id": "cake_dialog001",
|
"id": "cake_dialog001",
|
||||||
"start": "line_1",
|
"start": "line_1",
|
||||||
|
|||||||
@ -81,11 +81,13 @@ function on_bed_sleep()
|
|||||||
game_api.play_sound("audio/587036__antoineromo__bed-sheets.ogg")
|
game_api.play_sound("audio/587036__antoineromo__bed-sheets.ogg")
|
||||||
end
|
end
|
||||||
game_api.player_stop()
|
game_api.player_stop()
|
||||||
|
game_api.player_rotate_to(0.0)
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_alik_bathroom_click()
|
function on_alik_bathroom_click()
|
||||||
game_api.start_dialogue("door_bathroom_alik_dialog001")
|
game_api.start_dialogue("door_bathroom_alik_dialog001")
|
||||||
game_api.player_stop()
|
game_api.player_stop()
|
||||||
|
game_api.player_rotate_to(180.0)
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_locked_door_click()
|
function on_locked_door_click()
|
||||||
@ -110,6 +112,7 @@ function on_alik_door_click()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
game_api.player_stop()
|
game_api.player_stop()
|
||||||
|
game_api.player_rotate_to(-90.0)
|
||||||
end
|
end
|
||||||
|
|
||||||
function callback_deactivate_cover_alik_room()
|
function callback_deactivate_cover_alik_room()
|
||||||
@ -187,6 +190,7 @@ function on_player_bathroom_click()
|
|||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
|
||||||
game_api.player_stop()
|
game_api.player_stop()
|
||||||
|
game_api.player_rotate_to(180.0)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -296,6 +300,7 @@ end
|
|||||||
function on_shelf_click()
|
function on_shelf_click()
|
||||||
game_api.start_dialogue("dialog_shelf001")
|
game_api.start_dialogue("dialog_shelf001")
|
||||||
game_api.player_stop()
|
game_api.player_stop()
|
||||||
|
game_api.player_rotate_to(0.0)
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_stove1_click()
|
function on_stove1_click()
|
||||||
|
|||||||
@ -29,10 +29,13 @@ function on_container_clicked()
|
|||||||
else
|
else
|
||||||
game_api.start_dialogue("dialog_contaier001")
|
game_api.start_dialogue("dialog_contaier001")
|
||||||
end
|
end
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_car_clicked()
|
function on_car_clicked()
|
||||||
game_api.start_dialogue("dialog_car001")
|
game_api.start_dialogue("dialog_car001")
|
||||||
|
game_api.player_stop()
|
||||||
|
game_api.player_rotate_to(90.0)
|
||||||
end
|
end
|
||||||
|
|
||||||
function dialog_contaier002_get_coursework()
|
function dialog_contaier002_get_coursework()
|
||||||
|
|||||||
@ -3,18 +3,12 @@ CONST_MSG_WHERE = "Бекзат, ты где? Я жду..."
|
|||||||
|
|
||||||
hall_door_opened = false
|
hall_door_opened = false
|
||||||
teacher_door_opened = false
|
teacher_door_opened = false
|
||||||
--lection_is_over = false
|
|
||||||
|
|
||||||
player_hold_book = false
|
player_hold_book = false
|
||||||
player_hold_knife = false
|
player_hold_knife = false
|
||||||
--player_hold_key = false
|
teacher_arrived_to_library = false
|
||||||
teacher_arrived = false
|
|
||||||
teacher_told_about_book = false
|
teacher_told_about_book = false
|
||||||
|
|
||||||
--player_left_darklands = false
|
|
||||||
|
|
||||||
--was_darklands = false
|
|
||||||
|
|
||||||
|
|
||||||
--[[
|
--[[
|
||||||
0 - day0
|
0 - day0
|
||||||
@ -50,11 +44,8 @@ function dialog_aiperi_give_key()
|
|||||||
end
|
end
|
||||||
|
|
||||||
function lection_hall_zone001_enter_callback()
|
function lection_hall_zone001_enter_callback()
|
||||||
--game_api.start_dialogue("")
|
|
||||||
--Start cutscene
|
|
||||||
local lection_is_over = game_api.getIntValue("lection_is_over")
|
local lection_is_over = game_api.getIntValue("lection_is_over")
|
||||||
|
|
||||||
|
|
||||||
if (lection_is_over == 0) then
|
if (lection_is_over == 0) then
|
||||||
game_api.player_stop()
|
game_api.player_stop()
|
||||||
game_api.start_cutscene("lection_cutscene001")
|
game_api.start_cutscene("lection_cutscene001")
|
||||||
@ -68,7 +59,6 @@ game_api.set_trigger_zone_callbacks("lection_hall_zone001",
|
|||||||
)
|
)
|
||||||
|
|
||||||
function knife_dialog_zone001_enter_callback()
|
function knife_dialog_zone001_enter_callback()
|
||||||
print("knife_dialog_zone001_enter_callback--!")
|
|
||||||
local day = game_api.getIntValue("day")
|
local day = game_api.getIntValue("day")
|
||||||
local player_hold_key = game_api.getIntValue("player_hold_key")
|
local player_hold_key = game_api.getIntValue("player_hold_key")
|
||||||
|
|
||||||
@ -76,6 +66,7 @@ function knife_dialog_zone001_enter_callback()
|
|||||||
if (player_hold_knife == false) then
|
if (player_hold_knife == false) then
|
||||||
local lection_is_over = game_api.getIntValue("lection_is_over")
|
local lection_is_over = game_api.getIntValue("lection_is_over")
|
||||||
if lection_is_over == 1 then
|
if lection_is_over == 1 then
|
||||||
|
game_api.npc_stop_and_rotate_to_player(1)
|
||||||
if (player_hold_key == 1) then
|
if (player_hold_key == 1) then
|
||||||
game_api.start_dialogue("knife_dialog002")
|
game_api.start_dialogue("knife_dialog002")
|
||||||
else
|
else
|
||||||
@ -125,6 +116,7 @@ function on_knife_pickup()
|
|||||||
game_api.set_trigger_zone_enabled(2, true)
|
game_api.set_trigger_zone_enabled(2, true)
|
||||||
game_api.npc_walk_to(0, -4.57412, 0, 6.78495, on_teacher_arrived2)
|
game_api.npc_walk_to(0, -4.57412, 0, 6.78495, on_teacher_arrived2)
|
||||||
game_api.quest_set_objective_completed("aiperi_knife", "aiperi_knife_take")
|
game_api.quest_set_objective_completed("aiperi_knife", "aiperi_knife_take")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_book_pickup()
|
function on_book_pickup()
|
||||||
@ -154,6 +146,7 @@ function on_book_pickup()
|
|||||||
print("on_book_pickup step2")
|
print("on_book_pickup step2")
|
||||||
game_api.start_dialogue("book_dialog005")
|
game_api.start_dialogue("book_dialog005")
|
||||||
end
|
end
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_bookshelf_clicked()
|
function on_bookshelf_clicked()
|
||||||
@ -164,12 +157,14 @@ function on_bookshelf2_clicked()
|
|||||||
local day = game_api.getIntValue("day")
|
local day = game_api.getIntValue("day")
|
||||||
if (game_api.is_night()) or (day >= 1) then
|
if (game_api.is_night()) or (day >= 1) then
|
||||||
game_api.start_dialogue("book_dialog007")
|
game_api.start_dialogue("book_dialog007")
|
||||||
|
game_api.player_stop()
|
||||||
else
|
else
|
||||||
if (teacher_told_about_book and (player_hold_book == false)) then
|
if (teacher_told_about_book and (player_hold_book == false)) then
|
||||||
game_api.start_dialogue("book_dialog010")
|
game_api.start_dialogue("book_dialog010")
|
||||||
else
|
else
|
||||||
game_api.start_dialogue("book_dialog007")
|
game_api.start_dialogue("book_dialog007")
|
||||||
end
|
end
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -177,12 +172,14 @@ function on_bookshelf3_clicked()
|
|||||||
local day = game_api.getIntValue("day")
|
local day = game_api.getIntValue("day")
|
||||||
if (game_api.is_night()) or (day >= 1) then
|
if (game_api.is_night()) or (day >= 1) then
|
||||||
game_api.start_dialogue("book_dialog008")
|
game_api.start_dialogue("book_dialog008")
|
||||||
|
game_api.player_stop()
|
||||||
else
|
else
|
||||||
if (teacher_told_about_book and (player_hold_book == false)) then
|
if (teacher_told_about_book and (player_hold_book == false)) then
|
||||||
game_api.start_dialogue("book_dialog011")
|
game_api.start_dialogue("book_dialog011")
|
||||||
else
|
else
|
||||||
game_api.start_dialogue("book_dialog008")
|
game_api.start_dialogue("book_dialog008")
|
||||||
end
|
end
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -190,12 +187,14 @@ function on_bookshelf4_clicked()
|
|||||||
local day = game_api.getIntValue("day")
|
local day = game_api.getIntValue("day")
|
||||||
if (game_api.is_night()) or (day >= 1) then
|
if (game_api.is_night()) or (day >= 1) then
|
||||||
game_api.start_dialogue("book_dialog009")
|
game_api.start_dialogue("book_dialog009")
|
||||||
|
game_api.player_stop()
|
||||||
else
|
else
|
||||||
if (teacher_told_about_book and (player_hold_book == false)) then
|
if (teacher_told_about_book and (player_hold_book == false)) then
|
||||||
game_api.start_dialogue("book_dialog012")
|
game_api.start_dialogue("book_dialog012")
|
||||||
else
|
else
|
||||||
game_api.start_dialogue("book_dialog009")
|
game_api.start_dialogue("book_dialog009")
|
||||||
end
|
end
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -203,17 +202,20 @@ function on_bookshelf5_clicked()
|
|||||||
local day = game_api.getIntValue("day")
|
local day = game_api.getIntValue("day")
|
||||||
if (game_api.is_night()) or (day >= 1) then
|
if (game_api.is_night()) or (day >= 1) then
|
||||||
game_api.start_dialogue("book_dialog013")
|
game_api.start_dialogue("book_dialog013")
|
||||||
|
game_api.player_stop()
|
||||||
else
|
else
|
||||||
if (teacher_told_about_book and (player_hold_book == false)) then
|
if (teacher_told_about_book and (player_hold_book == false)) then
|
||||||
game_api.start_dialogue("book_dialog014")
|
game_api.start_dialogue("book_dialog014")
|
||||||
else
|
else
|
||||||
game_api.start_dialogue("book_dialog013")
|
game_api.start_dialogue("book_dialog013")
|
||||||
end
|
end
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_cake_clicked()
|
function on_cake_clicked()
|
||||||
game_api.start_dialogue("cake_dialog001")
|
game_api.start_dialogue("cake_dialog001")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_npc_interact(npc_index)
|
function on_npc_interact(npc_index)
|
||||||
@ -223,6 +225,7 @@ function on_npc_interact(npc_index)
|
|||||||
|
|
||||||
print("[Lua] NPC interaction! Index: " .. tostring(npc_index))
|
print("[Lua] NPC interaction! Index: " .. tostring(npc_index))
|
||||||
if npc_index == 1 then
|
if npc_index == 1 then
|
||||||
|
game_api.player_stop_and_rotate_to_npc(1)
|
||||||
if (game_api.is_dawn()) or (day > 0) then
|
if (game_api.is_dawn()) or (day > 0) then
|
||||||
game_api.start_dialogue("dialog_aiperi_morning001")
|
game_api.start_dialogue("dialog_aiperi_morning001")
|
||||||
else
|
else
|
||||||
@ -234,12 +237,17 @@ function on_npc_interact(npc_index)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
if npc_index == 0 then
|
if npc_index == 0 then
|
||||||
|
game_api.player_stop_and_rotate_to_npc(0)
|
||||||
if (day == 0) then
|
if (day == 0) then
|
||||||
|
if (teacher_arrived_to_library) then
|
||||||
if (teacher_told_about_book) then
|
if (teacher_told_about_book) then
|
||||||
game_api.start_dialogue("teacher_dialog006")
|
game_api.start_dialogue("teacher_dialog006")
|
||||||
else
|
else
|
||||||
game_api.start_dialogue("teacher_dialog001")
|
game_api.start_dialogue("teacher_dialog001")
|
||||||
end
|
end
|
||||||
|
else
|
||||||
|
game_api.start_dialogue("teacher_dialog008")
|
||||||
|
end
|
||||||
else
|
else
|
||||||
local player_has_coursework = game_api.getIntValue("player_has_coursework")
|
local player_has_coursework = game_api.getIntValue("player_has_coursework")
|
||||||
local player_has_report_card = game_api.getIntValue("player_has_report_card")
|
local player_has_report_card = game_api.getIntValue("player_has_report_card")
|
||||||
@ -257,6 +265,7 @@ function on_npc_interact(npc_index)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
if npc_index == 2 then
|
if npc_index == 2 then
|
||||||
|
game_api.player_stop_and_rotate_to_npc(2)
|
||||||
local report_card_signed = game_api.getIntValue("report_card_signed")
|
local report_card_signed = game_api.getIntValue("report_card_signed")
|
||||||
if (report_card_signed == 1) then
|
if (report_card_signed == 1) then
|
||||||
game_api.start_dialogue("dialog_with_ghost003")
|
game_api.start_dialogue("dialog_with_ghost003")
|
||||||
@ -265,6 +274,7 @@ function on_npc_interact(npc_index)
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
if npc_index == 6 then
|
if npc_index == 6 then
|
||||||
|
game_api.player_stop_and_rotate_to_npc(6)
|
||||||
game_api.start_dialogue("dialog_female_student002")
|
game_api.start_dialogue("dialog_female_student002")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -298,6 +308,7 @@ function on_library_door_click()
|
|||||||
local lection_is_over = game_api.getIntValue("lection_is_over")
|
local lection_is_over = game_api.getIntValue("lection_is_over")
|
||||||
|
|
||||||
if (day == 0) then
|
if (day == 0) then
|
||||||
|
game_api.player_stop()
|
||||||
if game_api.is_dawn() then
|
if game_api.is_dawn() then
|
||||||
if not (morning_did_open_door_index == 5) then
|
if not (morning_did_open_door_index == 5) then
|
||||||
game_api.start_dialogue("door_dialog007")
|
game_api.start_dialogue("door_dialog007")
|
||||||
@ -313,23 +324,14 @@ function on_library_door_click()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
print("Library door step 1")
|
|
||||||
|
|
||||||
if (game_api.is_night()) then
|
if (game_api.is_night()) then
|
||||||
print("Library door step 2")
|
|
||||||
print("morning_did_open_door_index")
|
|
||||||
print(morning_did_open_door_index)
|
|
||||||
print("game_api.is_dawn()")
|
|
||||||
print(game_api.is_dawn())
|
|
||||||
if (not game_api.is_dawn() or not (morning_did_open_door_index == 5)) then
|
if (not game_api.is_dawn() or not (morning_did_open_door_index == 5)) then
|
||||||
print("Library door step 3")
|
game_api.player_stop()
|
||||||
game_api.start_dialogue("door_dialog001")
|
game_api.start_dialogue("door_dialog001")
|
||||||
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
end
|
end
|
||||||
print("Library door step 4")
|
|
||||||
end
|
end
|
||||||
print("Library door step5")
|
|
||||||
end
|
end
|
||||||
print("Library door step 5")
|
|
||||||
end
|
end
|
||||||
|
|
||||||
function callback_deactivate_cover_s3()
|
function callback_deactivate_cover_s3()
|
||||||
@ -348,19 +350,14 @@ function callback_deactivate_cover_main_hall()
|
|||||||
game_api.deactivate_interactive_object("Room_Cover_Main_Hall_001")
|
game_api.deactivate_interactive_object("Room_Cover_Main_Hall_001")
|
||||||
end
|
end
|
||||||
|
|
||||||
--Room_Cover_North_3_001
|
function callback_player_rotate_90()
|
||||||
--Room_Cover_Main_Hall_001
|
game_api.player_rotate_to(90.0)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
function on_teachers_door_click()
|
function on_teachers_door_click()
|
||||||
print("on_teachers_door_click---")
|
|
||||||
|
|
||||||
local player_hold_key = game_api.getIntValue("player_hold_key")
|
local player_hold_key = game_api.getIntValue("player_hold_key")
|
||||||
|
|
||||||
local day = game_api.getIntValue("day")
|
local day = game_api.getIntValue("day")
|
||||||
print("day is")
|
|
||||||
print(day)
|
|
||||||
|
|
||||||
if (day == 0) and not game_api.is_dawn() then
|
if (day == 0) and not game_api.is_dawn() then
|
||||||
if (player_hold_key == 1) then
|
if (player_hold_key == 1) then
|
||||||
if (not teacher_door_opened) then
|
if (not teacher_door_opened) then
|
||||||
@ -369,16 +366,15 @@ function on_teachers_door_click()
|
|||||||
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
||||||
game_api.switch_navigation(3)
|
game_api.switch_navigation(3)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
game_api.start_dialogue("door_dialog004")
|
game_api.start_dialogue("door_dialog004")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if (game_api.is_dawn()) then
|
if (game_api.is_dawn()) then
|
||||||
print("morning_can_open_door_index is")
|
|
||||||
print(morning_can_open_door_index)
|
|
||||||
|
|
||||||
if (teacher_door_opened == false) then
|
if (teacher_door_opened == false) then
|
||||||
teacher_door_opened = true
|
teacher_door_opened = true
|
||||||
if (morning_can_open_door_index == 3) then
|
if (morning_can_open_door_index == 3) then
|
||||||
@ -387,6 +383,9 @@ function on_teachers_door_click()
|
|||||||
game_api.fade_object("Room_Cover_Corridor_001", 0, 0.5, callback_deactivate_cover_corridor)
|
game_api.fade_object("Room_Cover_Corridor_001", 0, 0.5, callback_deactivate_cover_corridor)
|
||||||
game_api.switch_navigation(10)
|
game_api.switch_navigation(10)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
--game_api.player_stop()
|
||||||
|
game_api.player_walk_to(-2.63033, 0, 6.18222, callback_player_rotate_90)
|
||||||
|
--Player pos: -2.63033 0 6.18222
|
||||||
else
|
else
|
||||||
if (morning_did_open_door_index == 1) then
|
if (morning_did_open_door_index == 1) then
|
||||||
--s1 + s3
|
--s1 + s3
|
||||||
@ -395,6 +394,7 @@ function on_teachers_door_click()
|
|||||||
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
||||||
game_api.switch_navigation(11)
|
game_api.switch_navigation(11)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
elseif (morning_did_open_door_index == 2) then
|
elseif (morning_did_open_door_index == 2) then
|
||||||
--s2 + s3
|
--s2 + s3
|
||||||
|
|
||||||
@ -402,20 +402,21 @@ function on_teachers_door_click()
|
|||||||
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
||||||
game_api.switch_navigation(15)
|
game_api.switch_navigation(15)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
elseif (morning_did_open_door_index == 5) then
|
elseif (morning_did_open_door_index == 5) then
|
||||||
--n3 + s3
|
--n3 + s3
|
||||||
|
|
||||||
game_api.rotate_object("Room_S_2_Leaf001", 90, 0.5, nil)
|
game_api.rotate_object("Room_S_2_Leaf001", 90, 0.5, nil)
|
||||||
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
||||||
game_api.switch_navigation(13)
|
game_api.switch_navigation(13)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
elseif (morning_did_open_door_index == 4) then
|
elseif (morning_did_open_door_index == 4) then
|
||||||
--n2 + s3
|
--n2 + s3
|
||||||
|
|
||||||
game_api.rotate_object("Room_S_2_Leaf001", 90, 0.5, nil)
|
game_api.rotate_object("Room_S_2_Leaf001", 90, 0.5, nil)
|
||||||
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
||||||
game_api.switch_navigation(14)
|
game_api.switch_navigation(14)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
elseif (morning_did_open_door_index == 6) then
|
elseif (morning_did_open_door_index == 6) then
|
||||||
--hall + s3
|
--hall + s3
|
||||||
|
|
||||||
@ -423,6 +424,7 @@ function on_teachers_door_click()
|
|||||||
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
||||||
game_api.switch_navigation(12)
|
game_api.switch_navigation(12)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
else
|
else
|
||||||
--Player was in corridor, but tries to open the teacher's door
|
--Player was in corridor, but tries to open the teacher's door
|
||||||
--s3 only
|
--s3 only
|
||||||
@ -430,6 +432,7 @@ function on_teachers_door_click()
|
|||||||
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
game_api.fade_object("Room_Cover_South_3_001", 0, 0.5, callback_deactivate_cover_s3)
|
||||||
game_api.switch_navigation(10)
|
game_api.switch_navigation(10)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -448,13 +451,13 @@ function on_teachers_door_click()
|
|||||||
|
|
||||||
game_api.switch_navigation(10)
|
game_api.switch_navigation(10)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_hall_door_click()
|
function on_hall_door_click()
|
||||||
print("on_hall_door_click---")
|
|
||||||
|
|
||||||
local day = game_api.getIntValue("day")
|
local day = game_api.getIntValue("day")
|
||||||
|
|
||||||
@ -463,6 +466,7 @@ function on_hall_door_click()
|
|||||||
if not (morning_did_open_door_index == 6) then
|
if not (morning_did_open_door_index == 6) then
|
||||||
game_api.start_dialogue("door_dialog007")
|
game_api.start_dialogue("door_dialog007")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if (not hall_door_opened) then
|
if (not hall_door_opened) then
|
||||||
@ -474,6 +478,7 @@ function on_hall_door_click()
|
|||||||
game_api.set_npc_enabled(6, true)
|
game_api.set_npc_enabled(6, true)
|
||||||
game_api.npc_rotate_to(6, 180)
|
game_api.npc_rotate_to(6, 180)
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
@ -481,6 +486,7 @@ function on_hall_door_click()
|
|||||||
if not (morning_did_open_door_index == 6) then
|
if not (morning_did_open_door_index == 6) then
|
||||||
game_api.start_dialogue("door_dialog001")
|
game_api.start_dialogue("door_dialog001")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -492,16 +498,19 @@ function on_s1_door_click()
|
|||||||
if not (morning_did_open_door_index == 1) then
|
if not (morning_did_open_door_index == 1) then
|
||||||
game_api.start_dialogue("door_dialog007")
|
game_api.start_dialogue("door_dialog007")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if (game_api.is_night()) then
|
if (game_api.is_night()) then
|
||||||
if not (morning_did_open_door_index == 1) then
|
if not (morning_did_open_door_index == 1) then
|
||||||
game_api.start_dialogue("door_dialog001")
|
game_api.start_dialogue("door_dialog001")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
game_api.start_dialogue("door_dialog006")
|
game_api.start_dialogue("door_dialog006")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -512,16 +521,19 @@ function on_s2_door_click()
|
|||||||
if not (morning_did_open_door_index == 2) then
|
if not (morning_did_open_door_index == 2) then
|
||||||
game_api.start_dialogue("door_dialog007")
|
game_api.start_dialogue("door_dialog007")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if (game_api.is_night()) then
|
if (game_api.is_night()) then
|
||||||
if not (morning_did_open_door_index == 2) then
|
if not (morning_did_open_door_index == 2) then
|
||||||
game_api.start_dialogue("door_dialog001")
|
game_api.start_dialogue("door_dialog001")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
game_api.start_dialogue("door_dialog006")
|
game_api.start_dialogue("door_dialog006")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@ -532,43 +544,39 @@ function on_n2_door_click()
|
|||||||
if not (morning_did_open_door_index == 4) then
|
if not (morning_did_open_door_index == 4) then
|
||||||
game_api.start_dialogue("door_dialog007")
|
game_api.start_dialogue("door_dialog007")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
if (game_api.is_night()) then
|
if (game_api.is_night()) then
|
||||||
if not (morning_did_open_door_index == 4) then
|
if not (morning_did_open_door_index == 4) then
|
||||||
game_api.start_dialogue("door_dialog001")
|
game_api.start_dialogue("door_dialog001")
|
||||||
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
game_api.play_sound("audio/398751__anthousai__door-lock-01.ogg")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_teacher_arrived()
|
function on_teacher_arrived()
|
||||||
print("Teacher arrived")
|
|
||||||
game_api.npc_rotate_to(0, 180)
|
game_api.npc_rotate_to(0, 180)
|
||||||
|
teacher_arrived_to_library = true
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_student_arrived()
|
function on_student_arrived()
|
||||||
print("Student arrived")
|
|
||||||
game_api.npc_rotate_to(6, 270)
|
game_api.npc_rotate_to(6, 270)
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_teacher_arrived2()
|
function on_teacher_arrived2()
|
||||||
print("Teacher arrived2")
|
|
||||||
game_api.npc_rotate_to(0, 0)
|
game_api.npc_rotate_to(0, 0)
|
||||||
end
|
end
|
||||||
|
|
||||||
function book_dialog_zone001_enter_callback()
|
function book_dialog_zone001_enter_callback()
|
||||||
print("book_dialog_zone001_enter_callback step 1")
|
|
||||||
if (game_api.is_darklands()) then
|
if (game_api.is_darklands()) then
|
||||||
print("book_dialog_zone001_enter_callback step 2")
|
|
||||||
game_api.start_dialogue("ghost_dialog002")
|
game_api.start_dialogue("ghost_dialog002")
|
||||||
game_api.set_trigger_zone_enabled(3, false)
|
game_api.set_trigger_zone_enabled(3, false)
|
||||||
game_api.advance_darklands_hud()
|
game_api.advance_darklands_hud()
|
||||||
else
|
else
|
||||||
print("book_dialog_zone001_enter_callback step 3")
|
|
||||||
if (player_hold_book) and (game_api.is_night() == false) then
|
if (player_hold_book) and (game_api.is_night() == false) then
|
||||||
print("book_dialog_zone001_enter_callback step 4")
|
|
||||||
game_api.start_dialogue("book_dialog001")
|
game_api.start_dialogue("book_dialog001")
|
||||||
game_api.switch_navigation(0)
|
game_api.switch_navigation(0)
|
||||||
game_api.player_stop()
|
game_api.player_stop()
|
||||||
@ -577,43 +585,36 @@ function book_dialog_zone001_enter_callback()
|
|||||||
end
|
end
|
||||||
|
|
||||||
function book_dialog_zone001_exit_callback()
|
function book_dialog_zone001_exit_callback()
|
||||||
print("book_dialog_zone001_exit_callback step 1")
|
|
||||||
if (player_hold_book) and (game_api.is_night() == false) then
|
if (player_hold_book) and (game_api.is_night() == false) then
|
||||||
game_api.switch_navigation(3)
|
game_api.switch_navigation(3)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_computer_clicked()
|
function on_computer_clicked()
|
||||||
print("on_computer_clicked--")
|
|
||||||
local day = game_api.getIntValue("day")
|
local day = game_api.getIntValue("day")
|
||||||
|
|
||||||
if game_api.is_darklands() then
|
if game_api.is_darklands() then
|
||||||
game_api.start_dialogue("computer_dialog004")
|
game_api.start_dialogue("computer_dialog004")
|
||||||
elseif (day >= 1) or game_api.is_dawn() then
|
elseif (day >= 1) or game_api.is_dawn() then
|
||||||
print("on_computer_clicked--1")
|
|
||||||
game_api.start_dialogue("computer_dialog003")
|
game_api.start_dialogue("computer_dialog003")
|
||||||
else
|
else
|
||||||
if teacher_told_about_book then
|
if teacher_told_about_book then
|
||||||
print("on_computer_clicked--2")
|
|
||||||
if (game_api.is_night() == false) then
|
if (game_api.is_night() == false) then
|
||||||
print("on_computer_clicked--3")
|
|
||||||
if (player_hold_book) then
|
if (player_hold_book) then
|
||||||
print("on_computer_clicked--4")
|
|
||||||
game_api.quest_set_objective_completed("study_project", "study_project_write")
|
game_api.quest_set_objective_completed("study_project", "study_project_write")
|
||||||
game_api.start_cutscene("computer_cutscene001")
|
game_api.start_cutscene("computer_cutscene001")
|
||||||
else
|
else
|
||||||
print("on_computer_clicked--5")
|
|
||||||
game_api.start_dialogue("book_dialog002")
|
game_api.start_dialogue("book_dialog002")
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
print("on_computer_clicked--6")
|
|
||||||
game_api.start_dialogue("computer_dialog002")
|
game_api.start_dialogue("computer_dialog002")
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
print("on_computer_clicked--7")
|
|
||||||
game_api.start_dialogue("computer_dialog001")
|
game_api.start_dialogue("computer_dialog001")
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_sleep_cutscene()
|
function on_sleep_cutscene()
|
||||||
@ -649,7 +650,6 @@ function on_teacher_arrived_intermediate()
|
|||||||
game_api.fade_object("Room_Cover_North_3_001", 0, 0.5, callback_deactivate_cover_n3)
|
game_api.fade_object("Room_Cover_North_3_001", 0, 0.5, callback_deactivate_cover_n3)
|
||||||
game_api.switch_navigation(2)
|
game_api.switch_navigation(2)
|
||||||
game_api.npc_walk_to(0, 4.94194, 0, 6.64111, on_teacher_arrived)
|
game_api.npc_walk_to(0, 4.94194, 0, 6.64111, on_teacher_arrived)
|
||||||
teacher_arrived = true
|
|
||||||
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
game_api.play_sound("audio/702171__foxfire__door-opening.ogg")
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -684,18 +684,17 @@ end
|
|||||||
|
|
||||||
game_api.set_cutscene_callback("lection_cutscene001", callback_on_lection_cutscene_over)
|
game_api.set_cutscene_callback("lection_cutscene001", callback_on_lection_cutscene_over)
|
||||||
|
|
||||||
|
|
||||||
function on_note_pickup()
|
function on_note_pickup()
|
||||||
game_api.start_dialogue("note_dialog001")
|
game_api.start_dialogue("note_dialog001")
|
||||||
game_api.pickup_item("note_spell")
|
game_api.pickup_item("note_spell")
|
||||||
game_api.deactivate_interactive_object("Note001")
|
game_api.deactivate_interactive_object("Note001")
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_report_card_pickup()
|
function on_report_card_pickup()
|
||||||
local player_repord_card_discussed = game_api.getIntValue("player_repord_card_discussed")
|
local player_repord_card_discussed = game_api.getIntValue("player_repord_card_discussed")
|
||||||
if player_repord_card_discussed == 1 then
|
if player_repord_card_discussed == 1 then
|
||||||
local player_has_report_card = game_api.getIntValue("player_has_report_card")
|
local player_has_report_card = game_api.getIntValue("player_has_report_card")
|
||||||
--local report_card_signed = game_api.getIntValue("report_card_signed")
|
|
||||||
|
|
||||||
if (player_has_report_card == 1) then
|
if (player_has_report_card == 1) then
|
||||||
game_api.start_dialogue("dialog_report_card003") -- Еще рано возвращать зачетку обратно в шкаф
|
game_api.start_dialogue("dialog_report_card003") -- Еще рано возвращать зачетку обратно в шкаф
|
||||||
@ -709,6 +708,7 @@ function on_report_card_pickup()
|
|||||||
else
|
else
|
||||||
game_api.start_dialogue("dialog_report_card001")
|
game_api.start_dialogue("dialog_report_card001")
|
||||||
end
|
end
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
function on_bookshelf_teacher_clicked()
|
function on_bookshelf_teacher_clicked()
|
||||||
@ -750,6 +750,7 @@ function callback_enter_darklands()
|
|||||||
end
|
end
|
||||||
|
|
||||||
game_api.switch_navigation(5)
|
game_api.switch_navigation(5)
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
function callback_exit_darklands()
|
function callback_exit_darklands()
|
||||||
@ -762,13 +763,10 @@ function callback_exit_darklands()
|
|||||||
game_api.set_npc_enabled(5, false)
|
game_api.set_npc_enabled(5, false)
|
||||||
game_api.set_npc_enabled(6, false)
|
game_api.set_npc_enabled(6, false)
|
||||||
|
|
||||||
--game_api.setIntValue("need_sleep", 1)
|
|
||||||
--player_left_darklands = true
|
|
||||||
morning_did_open_door_index = 0
|
morning_did_open_door_index = 0
|
||||||
setDay1MorningSetup()
|
setDay1MorningSetup()
|
||||||
game_api.set_dawn()
|
game_api.set_dawn()
|
||||||
|
|
||||||
|
|
||||||
local px = game_api.get_player_x()
|
local px = game_api.get_player_x()
|
||||||
local pz = game_api.get_player_z()
|
local pz = game_api.get_player_z()
|
||||||
|
|
||||||
@ -847,6 +845,8 @@ function callback_exit_darklands()
|
|||||||
game_api.setIntValue("morning_aiperi_save_again", 1)
|
game_api.setIntValue("morning_aiperi_save_again", 1)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
game_api.player_stop()
|
||||||
end
|
end
|
||||||
|
|
||||||
game_api.set_darklands_callbacks(
|
game_api.set_darklands_callbacks(
|
||||||
@ -868,7 +868,6 @@ function setDay0setup()
|
|||||||
game_api.deactivate_interactive_object("Room_Cover_Corridor_001")
|
game_api.deactivate_interactive_object("Room_Cover_Corridor_001")
|
||||||
game_api.deactivate_interactive_object("Room_Cover_North_2_001")
|
game_api.deactivate_interactive_object("Room_Cover_North_2_001")
|
||||||
|
|
||||||
|
|
||||||
game_api.rotate_object("Room_N_1_Leaf001", -90, 0.01, nil)
|
game_api.rotate_object("Room_N_1_Leaf001", -90, 0.01, nil)
|
||||||
--game_api.set_object_rotation("Room_N_1_Leaf001", -90)
|
--game_api.set_object_rotation("Room_N_1_Leaf001", -90)
|
||||||
|
|
||||||
@ -1071,6 +1070,8 @@ function setDay1NightSetup()
|
|||||||
game_api.deactivate_interactive_object("car001")
|
game_api.deactivate_interactive_object("car001")
|
||||||
game_api.deactivate_interactive_object("car001wheels")
|
game_api.deactivate_interactive_object("car001wheels")
|
||||||
|
|
||||||
|
game_api.deactivate_interactive_object("Cake001")
|
||||||
|
|
||||||
local px = game_api.get_player_x()
|
local px = game_api.get_player_x()
|
||||||
local pz = game_api.get_player_z()
|
local pz = game_api.get_player_z()
|
||||||
|
|
||||||
@ -1112,6 +1113,7 @@ function setDay1NightSetup()
|
|||||||
end
|
end
|
||||||
|
|
||||||
function callback_enter_night()
|
function callback_enter_night()
|
||||||
|
|
||||||
game_api.start_dialogue("dialog_video001")
|
game_api.start_dialogue("dialog_video001")
|
||||||
setDay1NightSetup()
|
setDay1NightSetup()
|
||||||
game_api.switch_navigation(16)
|
game_api.switch_navigation(16)
|
||||||
@ -1133,6 +1135,8 @@ function callback_enter_night()
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
---------------
|
---------------
|
||||||
|
game_api.player_stop()
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
game_api.set_enter_night_callback(callback_enter_night)
|
game_api.set_enter_night_callback(callback_enter_night)
|
||||||
@ -1217,6 +1221,8 @@ game_api.set_chat_callbacks(
|
|||||||
)
|
)
|
||||||
|
|
||||||
function callback_aiperi_dialog_morning()
|
function callback_aiperi_dialog_morning()
|
||||||
|
game_api.player_stop_and_rotate_to_npc(1)
|
||||||
|
game_api.npc_stop_and_rotate_to_player(1)
|
||||||
game_api.start_dialogue("dialog_aiperi_morning001")
|
game_api.start_dialogue("dialog_aiperi_morning001")
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
BIN
resources/w/ui/img/main/letters002.png
(Stored with Git LFS)
BIN
resources/w/ui/img/main/letters002.png
(Stored with Git LFS)
Binary file not shown.
BIN
resources/w/ui_en/img/main/letters002.png
(Stored with Git LFS)
BIN
resources/w/ui_en/img/main/letters002.png
(Stored with Git LFS)
Binary file not shown.
@ -16,6 +16,7 @@
|
|||||||
#include <android/log.h>
|
#include <android/log.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#ifdef EMSCRIPTEN
|
#ifdef EMSCRIPTEN
|
||||||
#include <emscripten.h>
|
#include <emscripten.h>
|
||||||
#endif
|
#endif
|
||||||
@ -1163,11 +1164,8 @@ namespace ZL
|
|||||||
case SDLK_k:
|
case SDLK_k:
|
||||||
x = x - 1;
|
x = x - 1;
|
||||||
std::cout << "current x: " << x << std::endl;
|
std::cout << "current x: " << x << std::endl;
|
||||||
//y = y + 1;
|
|
||||||
//std::cout << "current y: " << y << std::endl;
|
|
||||||
//y = y - 0.002;
|
|
||||||
|
|
||||||
std::cout << "Player pos: " << currentLocation()->player->state.position.transpose() << std::endl;
|
std::cout << "Player pos: " << currentLocation()->player->state.position.transpose() << std::endl;
|
||||||
|
std::cout << "Player rotation: " << currentLocation()->player->state.facingAngle*180.0/M_PI << std::endl;
|
||||||
//currentLocation->npcs[0]->walkSpeed -= 0.01f;
|
//currentLocation->npcs[0]->walkSpeed -= 0.01f;
|
||||||
//std::cout << "Walk speed: " << currentLocation->npcs[0]->walkSpeed << std::endl;
|
//std::cout << "Walk speed: " << currentLocation->npcs[0]->walkSpeed << std::endl;
|
||||||
break;
|
break;
|
||||||
@ -1515,7 +1513,6 @@ namespace ZL
|
|||||||
|
|
||||||
bool Game::startDarklandsTransition()
|
bool Game::startDarklandsTransition()
|
||||||
{
|
{
|
||||||
audioPlayer->playSoundAsync("audio/459618__n-lerche__blow.ogg");
|
|
||||||
if (!gameState.isNight)
|
if (!gameState.isNight)
|
||||||
{
|
{
|
||||||
currentLocation()->dialogueSystem.startDialogue("darklands_day_dialog001");
|
currentLocation()->dialogueSystem.startDialogue("darklands_day_dialog001");
|
||||||
@ -1528,6 +1525,7 @@ namespace ZL
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
audioPlayer->playSoundAsync("audio/459618__n-lerche__blow.ogg");
|
||||||
if (darklandsFlashActive) return false;
|
if (darklandsFlashActive) return false;
|
||||||
darklandsFlashActive = true;
|
darklandsFlashActive = true;
|
||||||
darklandsFlashFadingIn = true;
|
darklandsFlashFadingIn = true;
|
||||||
|
|||||||
@ -128,11 +128,29 @@ namespace ZL {
|
|||||||
npcs[index]->state.targetFacingAngle = rad;
|
npcs[index]->state.targetFacingAngle = rad;
|
||||||
});
|
});
|
||||||
|
|
||||||
|
api.set_function("player_rotate_to",
|
||||||
|
[loc](float angle) {
|
||||||
|
const float rad = angle * static_cast<float>(M_PI) / 180.f;
|
||||||
|
std::cout << "[script] player_rotate_to: angle " << angle << " degrees (" << rad << " radians)" << std::endl;
|
||||||
|
loc->player->state.targetFacingAngle = rad;
|
||||||
|
});
|
||||||
|
|
||||||
api.set_function("player_stop_and_rotate_to_npc",
|
api.set_function("player_stop_and_rotate_to_npc",
|
||||||
[loc](int index) {
|
[loc](int index) {
|
||||||
loc->player->stopAndRotateToTarget(index);
|
loc->player->stopAndRotateToTarget(index);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
api.set_function("npc_stop_and_rotate_to_player",
|
||||||
|
[loc](int index) {
|
||||||
|
auto& npcs = loc->npcs;
|
||||||
|
if (index < 0 || index >= static_cast<int>(npcs.size())) {
|
||||||
|
std::cerr << "[script] npc_stop_and_rotate_to_player: index " << index
|
||||||
|
<< " out of range (0.." << npcs.size() - 1 << ")\n";
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
npcs[index]->stopAndRotateToTarget(CharacterState::kPlayerIndex);
|
||||||
|
});
|
||||||
|
|
||||||
api.set_function("player_walk_to",
|
api.set_function("player_walk_to",
|
||||||
[loc, this_impl = impl.get()](float x, float y, float z, sol::object on_arrived) {
|
[loc, this_impl = impl.get()](float x, float y, float z, sol::object on_arrived) {
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user