| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153 |
- local UISign2View = require("UISign/UISign2View_Generate")
- local ModelViewSystem = require("ModelViewSystem")
- local PreviewSystem = require("PreviewSystem")
- local _modelViewSystem;
- local previewSystem = nil;
- local _modelPath = Constants.ModelPath;
- local _modelName = nil;
- --[[
- local _acPath = "";
- local _acName = "";]]--
- function UISign2View:OnAwake(data)
- self.controller = require("UISign/UISign2Ctr"):new()
- self.controller:Init(self)
- self.controller:SetData(data)
- end
- function UISign2View:AddEventListener()
- end
- function UISign2View:FillContent(data, uiBase)
- self.uiBase = uiBase
- local gameObject = self.uiBase:GetRoot()
- if gameObject ~= nil then
- self.gameObject = gameObject
- self.transform = gameObject.transform
- end
- self:InitGenerate(self.transform, data)
- self:Init()
- end
- function UISign2View:Init()
- ManagerContainer.LuaUIMgr:CloseInputMask()
- if not _modelName then
- _modelName = GlobalConfig.Instance:GetConfigStrValue(160)
- end
- self:InitModel();
- end
- function UISign2View:RemoveEventListener()
- ManagerContainer.LuaEventMgr:Unregister(self.uiData.name)
- end
- function UISign2View:AddUIEventListener()
- ManagerContainer.LuaEventMgr:RegisterUIEvent(self.uiData.name)
- end
- function UISign2View:OnHide()
- end
- function UISign2View:OnShow(data)
- self.controller:SetData(data)
- end
- function UISign2View:OnClose()
- if previewSystem then
- previewSystem:Dispose()
- end
- previewSystem = nil
- if _modelViewSystem then
- _modelViewSystem:Dispose()
- end
- _modelViewSystem = nil
-
- if self._closeTimer then
- ManagerContainer.LuaTimerMgr:RemoveTimer(self._closeTimer);
- self._closeTimer = nil;
- end
- end
- function UISign2View:OnDispose()
- self.controller:OnDispose()
- end
- function UISign2View:InitModel()
- if not _modelViewSystem then
- _modelViewSystem = ModelViewSystem:new();
- end
- local _dialogueString = self.controller:GetDialogueString();
- local _nickName = ManagerContainer.DataMgr.UserData:GetUserNickname();
- local _string = I18N.SetLanguageValue(_dialogueString, _nickName);
- local _times = self.controller:GetDialogueTimes();
- if not previewSystem then
- previewSystem = PreviewSystem:new("Sign", 1024, 1024)
- local _posStr = GlobalConfig.Instance:GetConfigStrValue(162)
- local _pos = string.split(_posStr, ";")
- local _eulStr = GlobalConfig.Instance:GetConfigStrValue(163)
- local _eul = string.split(_eulStr, ";")
- local _posReal = Vector3.zero;
- local _eulReal = Quaternion.Euler(0, 0, 0);
- if #_pos == 3 then
- _posReal = Vector3(tonumber(_pos[1]), tonumber(_pos[2]), tonumber(_pos[3]));
- end
- if #_eul == 3 then
- _eulReal = Quaternion.Euler(tonumber(_eul[1]), tonumber(_eul[2]), tonumber(_eul[3]));
- end
- previewSystem:SetView(_posReal, _eulReal);
- end
- local _dialogueData = {
- _textStr = _string, --要说的话
- _showStartTime = _times[1], --显示的开始时间
- _showEndTime = _times[2], --显示的结束时间
- _dialogueParent = GlobalConfig.Instance:GetConfigStrValue(161), --冒泡对话的父级节点的路径
- }
- _modelViewSystem:RefreshView(_modelPath, _modelName, nil, nil, _dialogueData, nil, self, self.LoadModelCB);
- local _data = self.controller:GetData();
- if _data ~= true then
- self._closeTimer = ManagerContainer.LuaTimerMgr:AddTimer(_times[3], 1, self, self.OpenSignInFun, nil);
- end
- end
- function UISign2View:OpenSignInFun()
- --ManagerContainer.DataMgr.SignData:OpenSign(Enum.UIPageName.UIBattle);
- self:UIClose()
- ManagerContainer.LuaUIMgr:Open(Enum.UIPageName.UISignDaily)
- end
- --load 模型
- function UISign2View:LoadModelCB(model)
- if model then
- if previewSystem then
- previewSystem:UpdateGo(model)
- end
- model:SetActive(true)
- end
- self.rawImage.rawImage.texture = previewSystem:GetRenderTexture()
- end
- return UISign2View
|