Updating scripts

This commit is contained in:
Vladislav Khorev committed 2026-05-18 15:21:42 +03:00
1 parent 21bf3f0710
commit 27b4b19df4
13 files changed
+903 -127

No files matched your search

+164 -24
View File
@@ -15,6 +15,8 @@ player_in_darklands = false
player_ghost_aware = false
ghost_gone = false
function lection_hall_zone001_enter_callback()
--game_api.start_dialogue("")
--Start cutscene
@@ -104,22 +106,56 @@ function on_npc_interact(npc_index)
print("[Lua] NPC interaction! Index: " .. tostring(npc_index))
if npc_index == 1 then
if (player_ghost_aware) then
game_api.start_dialogue("aiperi_dialog001")
local player_alik_aware = game_api.getIntValue("player_alik_aware")
if player_alik_aware ==1 then
game_api.start_dialogue("aiperi_dialog002")
else
game_api.start_dialogue("aiperi_dialog001")
game_api.setIntValue("player_alik_aware", 1)
end
else
game_api.start_dialogue("knife_dialog001")
game_api.start_dialogue("knife_dialog001")
end
end
if npc_index == 0 then
if (player_ghost_aware) then
game_api.start_dialogue("teacher_dialog003")
--game_api.setIntValue("player_has_coursework", 1)
local player_has_coursework = game_api.getIntValue("player_has_coursework")
local player_has_report_card = game_api.getIntValue("player_has_report_card")
local report_card_signed = game_api.getIntValue("report_card_signed")
if (report_card_signed == 1) then
game_api.start_dialogue("teacher_dialog002")
elseif (player_has_coursework == 1 and player_has_report_card==1) then
game_api.start_dialogue("teacher_dialog005")
game_api.remove_item("coursework")
game_api.setIntValue("report_card_signed", 1)
elseif (player_has_coursework == 1) then
game_api.start_dialogue("teacher_dialog004")
else
game_api.start_dialogue("teacher_dialog003")
end
else
game_api.start_dialogue("teacher_dialog001")
game_api.start_dialogue("teacher_dialog001")
end
--game_api.set_trigger_zone_enabled(2, false)
end
if npc_index == 2 then
if (player_ghost_aware) then
local report_card_signed = game_api.getIntValue("report_card_signed")
if (report_card_signed==1) then
game_api.start_dialogue("dialog_with_ghost003")
ghost_gone = true
game_api.set_npc_enabled(2, false)
game_api.set_npc_enabled(3, false)
game_api.set_npc_enabled(4, false)
game_api.set_npc_enabled(5, false)
else
game_api.start_dialogue("dialog_with_ghost002")
end
else
game_api.start_dialogue("dialog_with_ghost001")
player_ghost_aware = true
end
end
end
@@ -236,7 +272,10 @@ game_api.set_cutscene_callback("test_cutscene_02", function()
--game_api.set_trigger_zone_enabled(1, false)
game_api.set_npc_enabled(0, false)
game_api.switch_navigation(5)
game_api.rotate_object("Room_N_2_Leaf001", 90, 0.01, nil)
game_api.set_object_rotation("Room_N_2_Leaf001", 0)
game_api.set_object_rotation("Hall_Leaf001", 0)
game_api.set_object_rotation("Room_S_2_Leaf001", 0)
game_api.activate_interactive_object("Room_Cover_Corridor_001")
game_api.activate_interactive_object("Room_Cover_Main_Hall_001")
game_api.activate_interactive_object("Room_Cover_North_1_001")
@@ -244,10 +283,10 @@ game_api.set_cutscene_callback("test_cutscene_02", function()
game_api.activate_interactive_object("Room_Cover_South_1_001")
game_api.activate_interactive_object("Room_Cover_South_2_001")
game_api.activate_interactive_object("Room_Cover_South_3_001")
game_api.fade_object("Room_Cover_Corridor_001", 1, 0.01, nil)
game_api.fade_object("Room_Cover_South_3_001", 1, 0.01, nil)
game_api.fade_object("Room_Cover_North_1_001", 1, 0.01, nil)
game_api.fade_object("Room_Cover_Main_Hall_001", 1, 0.01, nil)
game_api.set_object_alpha("Room_Cover_Corridor_001", 1)
game_api.set_object_alpha("Room_Cover_South_3_001", 1)
game_api.set_object_alpha("Room_Cover_North_1_001", 1)
game_api.set_object_alpha("Room_Cover_Main_Hall_001", 1)
game_api.activate_interactive_object("Note001")
end)
@@ -259,20 +298,59 @@ game_api.deactivate_interactive_object("Note001")
end
function on_report_card_pickup()
if player_ghost_aware then
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
game_api.start_dialogue("dialog_report_card003") -- Еще рано возвращать зачетку обратно в шкаф
else
game_api.start_dialogue("dialog_report_card002") -- Я пожалуй возьму зачетку
game_api.pickup_item("report_card")
game_api.deactivate_interactive_object("ReportCard001")
game_api.setIntValue("player_has_report_card", 1)
end
else
game_api.start_dialogue("dialog_report_card001")
end
end
function on_bookshelf_teacher_clicked()
game_api.start_dialogue("dialog_report_card001")
on_report_card_pickup()
end
first_time_darklands = true
game_api.set_darklands_callbacks(
function()
game_api.start_dialogue("ghost_dialog001")
game_api.set_npc_enabled(2, true)
game_api.set_npc_enabled(3, true)
game_api.set_npc_enabled(4, true)
game_api.set_npc_enabled(5, true)
if (first_time_darklands) then
game_api.start_dialogue("ghost_dialog001")
first_time_darklands = false
end
game_api.set_npc_enabled(0, false)
game_api.set_npc_enabled(1, false)
if (ghost_gone) then
game_api.set_npc_enabled(2, false)
game_api.set_npc_enabled(3, false)
game_api.set_npc_enabled(4, false)
game_api.set_npc_enabled(5, false)
else
game_api.set_npc_enabled(2, true)
game_api.set_npc_enabled(3, true)
game_api.set_npc_enabled(4, true)
game_api.set_npc_enabled(5, true)
game_api.npc_set_hp(3, 35)
game_api.npc_set_hp(4, 35)
game_api.npc_set_hp(5, 35)
game_api.npc_set_position(3, 0,0,-6.4)
game_api.npc_set_position(4, -5.0,0,12)
game_api.npc_set_position(5, 5.0,0,12)
end
game_api.switch_navigation(6)
player_in_darklands = true
@@ -280,16 +358,18 @@ game_api.set_darklands_callbacks(
end,
function()
player_in_darklands = false
game_api.start_cutscene("test_cutscene_03")
game_api.set_npc_enabled(2, false)
game_api.start_cutscene("darklands_exit001")
game_api.set_npc_enabled(0, false)
game_api.set_npc_enabled(1, false)
game_api.set_npc_enabled(2, false)
game_api.set_npc_enabled(3, false)
game_api.set_npc_enabled(4, false)
game_api.set_npc_enabled(5, false)
game_api.switch_navigation(3)
game_api.switch_navigation(0) -- todo fix
game_api.setIntValue("day", 1)
game_api.setIntValue("need_sleep", 1)
game_api.set_player_hp(10)
setDay1MorningSetup()
end
)
@@ -304,20 +384,29 @@ game_api.set_trigger_zone_callbacks("book_dialog_zone001",
book_dialog_zone001_exit_callback
)
function setDay0setup()
game_api.deactivate_interactive_object("Room_Cover_Corridor_001")
game_api.deactivate_interactive_object("Room_Cover_North_1_001")
game_api.deactivate_interactive_object("Note001")
game_api.set_npc_enabled(0, false)
game_api.set_npc_enabled(1, false)
game_api.set_npc_enabled(2, false)
game_api.set_npc_enabled(3, false)
game_api.set_npc_enabled(4, false)
game_api.set_npc_enabled(5, false)
end
function setDay1setup()
game_api.switch_navigation(5)
game_api.set_object_alpha("Room_Cover_North_1_001", 1)
game_api.set_object_alpha("Room_Cover_North_2_001", 1)
game_api.set_object_alpha("Room_Cover_North_3_001", 1)
game_api.set_object_alpha("Room_Cover_South_1_001", 1)
game_api.set_object_alpha("Room_Cover_South_2_001", 1)
game_api.set_object_alpha("Room_Cover_South_3_001", 1)
game_api.set_object_alpha("Room_Cover_Corridor_001", 1)
game_api.set_object_alpha("Room_Cover_Main_Hall_001", 1)
game_api.deactivate_interactive_object("Room_Cover_Corridor_001")
game_api.deactivate_interactive_object("Room_Cover_Main_Hall_001")
game_api.deactivate_interactive_object("Room_Cover_North_1_001")
@@ -326,6 +415,15 @@ function setDay1setup()
game_api.activate_interactive_object("Room_Cover_South_1_001")
game_api.activate_interactive_object("Room_Cover_South_2_001")
game_api.deactivate_interactive_object("Room_Cover_South_3_001")
game_api.set_object_rotation("Room_N_0_Leaf001", 0)
game_api.set_object_rotation("Room_N_1_Leaf001", 0)
game_api.set_object_rotation("Room_N_2_Leaf001", -90)
game_api.set_object_rotation("Room_S_0_Leaf001", 0)
game_api.set_object_rotation("Room_S_1_Leaf001", 0)
game_api.set_object_rotation("Room_S_2_Leaf001", 90)
game_api.set_object_rotation("Hall_Leaf001", 90)
game_api.set_npc_enabled(0, true)
game_api.set_npc_enabled(1, true)
game_api.set_npc_enabled(2, false)
@@ -334,19 +432,61 @@ function setDay1setup()
game_api.set_npc_enabled(5, false)
end
function setDay1MorningSetup()
game_api.deactivate_interactive_object("Room_Cover_North_1_001")
game_api.activate_interactive_object("Room_Cover_North_2_001")
game_api.activate_interactive_object("Room_Cover_North_3_001")
game_api.activate_interactive_object("Room_Cover_South_1_001")
game_api.activate_interactive_object("Room_Cover_South_2_001")
game_api.activate_interactive_object("Room_Cover_South_3_001")
game_api.deactivate_interactive_object("Room_Cover_Corridor_001")
game_api.activate_interactive_object("Room_Cover_Main_Hall_001")
game_api.set_object_rotation("Room_N_0_Leaf001", 0)
game_api.set_object_rotation("Room_N_1_Leaf001", 0)
game_api.set_object_rotation("Room_N_2_Leaf001", 0)
game_api.set_object_rotation("Room_S_0_Leaf001", 0)
game_api.set_object_rotation("Room_S_1_Leaf001", 0)
game_api.set_object_rotation("Room_S_2_Leaf001", 0)
game_api.set_object_rotation("Hall_Leaf001", 0)
game_api.set_object_alpha("Room_Cover_North_1_001", 1)
game_api.set_object_alpha("Room_Cover_North_2_001", 1)
game_api.set_object_alpha("Room_Cover_North_3_001", 1)
game_api.set_object_alpha("Room_Cover_South_1_001", 1)
game_api.set_object_alpha("Room_Cover_South_2_001", 1)
game_api.set_object_alpha("Room_Cover_South_3_001", 1)
game_api.set_object_alpha("Room_Cover_Corridor_001", 1)
game_api.set_object_alpha("Room_Cover_Main_Hall_001", 1)
game_api.set_npc_enabled(0, false)
game_api.set_npc_enabled(1, false)
game_api.set_npc_enabled(2, false)
game_api.set_npc_enabled(3, false)
game_api.set_npc_enabled(4, false)
game_api.set_npc_enabled(5, false)
end
game_api.set_location_callbacks(
function()
print("Enter location uni interior")
local hp = game_api.getFloatValue("player_hp")
game_api.set_player_hp(hp)
--[[
local need_sleep = game_api.getIntValue("need_sleep")
local day = game_api.getIntValue("day")
if (day==1) then
if (day>0) and (need_sleep==1) then
setDay1MorningSetup()
game_api.switch_navigation(0)
elseif (day>0) then
setDay1setup()
end]]
game_api.switch_navigation(5)
else
setDay0setup()
game_api.switch_navigation(0)
end
end,
function()
print("Exit location uni interior")