Back to Home

ESO Lua File v100030

ingame/retrait/zo_retraitstation_base.lua

[◄ back to folders ]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
ZO_RETRAIT_MODE_ROOT = 0
ZO_RETRAIT_MODE_RETRAIT = 1
ZO_RetraitStation_Base = ZO_Object:Subclass()
function ZO_RetraitStation_Base:New(...)
    local obj = ZO_Object.New(self)
    obj:Initialize(...)
    return obj
end
function ZO_RetraitStation_Base:Initialize(control, interactSceneName)
    self.control = control
    self.retraitStationInteraction =
    {
        type = "Retrait Station",
        End = function()
            SCENE_MANAGER:ShowBaseScene()
        end,
        interactTypes = { INTERACTION_RETRAIT },
    }
    self.interactScene = self:CreateInteractScene(interactSceneName)
    self.interactScene:RegisterCallback("StateChange", function(oldState, newState)
        if newState == SCENE_SHOWING then
            TriggerTutorial(TUTORIAL_TRIGGER_RETRAIT_STATION_OPENED)
            self:OnInteractSceneShowing()
        elseif newState == SCENE_HIDING then
            self:OnInteractSceneHiding()
        elseif newState == SCENE_HIDDEN then
            self:OnInteractSceneHidden()
        end
    end)
    ZO_RETRAIT_STATION_MANAGER:RegisterRetraitScene(interactSceneName)
    ZO_RETRAIT_STATION_MANAGER:RegisterCallback("OnRetraitDirtyEvent", function(...) self:HandleDirtyEvent(...) end)
end
function ZO_RetraitStation_Base:CreateInteractScene(sceneName)
    return ZO_InteractScene:New(sceneName, SCENE_MANAGER, self.retraitStationInteraction)
end
function ZO_RetraitStation_Base:IsItemAlreadySlottedToCraft(bag, slot)
    -- To be overridden
    return false
end
function ZO_RetraitStation_Base:CanItemBeAddedToCraft(bag, slot)
    -- To be overridden
    return false
end
function ZO_RetraitStation_Base:AddItemToCraft(bag, slot)
    -- To be overridden
end
function ZO_RetraitStation_Base:RemoveItemFromCraft(bag, slot)
    -- To be overridden
end
function ZO_RetraitStation_Base:OnRetraitResult(result)
    -- To be overridden
end
function ZO_RetraitStation_Base:HandleDirtyEvent()
    -- To be overridden
end
function ZO_RetraitStation_Base:OnInteractSceneShowing()
    -- Optional Override
end
function ZO_RetraitStation_Base:OnInteractSceneHiding()
    -- Optional Override
end
function ZO_RetraitStation_Base:OnInteractSceneHidden()
    -- Optional Override
end