|
|
- DialogueChooseMessage = DialogueChooseMessage or BaseClass(BaseView)
- local DialogueChooseMessage = DialogueChooseMessage
-
- DialogueChooseMessage.MSG_INFO = {
- [1] = "人物性格 理性<color=#fddd6e>+%s</color>",
- [2] = "人物性格 感性<color=#fddd6e>+%s</color>",
- [3] = "人物性格 中性<color=#fddd6e>+%s</color>",
- [4] = "自由性格点数 <color=#fddd6e>+%s</color>",
- }
-
- function DialogueChooseMessage:__init()
- self.base_file = "dialogue"
- self.layout_file = "DialogueChooseMessage"
- self.layer_name = "Top"
- self.destroy_imm = true
- self.use_background = false
- self.change_scene_close = true
-
- self.load_callback = function ()
- self:LoadSuccess()
- end
- self.open_callback = function ( )
- self:OpenSuccess()
- end
- self.destroy_callback = function ( )
- self:DestroySuccess()
- end
- end
-
- function DialogueChooseMessage:Open( choose_type, choose_value )
- self.choose_type, self.choose_value = choose_type, choose_value
- BaseView.Open(self)
- end
-
- --重复调用,省去open逻辑
- function DialogueChooseMessage:SetData( choose_type, choose_value )
- self.choose_type, self.choose_value = choose_type, choose_value
- self:UpdateView()
- end
-
- function DialogueChooseMessage:LoadSuccess()
- self.nodes = {
- "cont:obj", "cont/nastic_bg:obj", "cont/intellect_bg:obj", "cont/value:tmp", "cont/indecision_bg:obj",
- }
- self:GetChildren(self.nodes)
- end
-
- function DialogueChooseMessage:OpenSuccess()
- if self.choose_type and self.choose_type ~= 0 then
- -- 更新性格节点数据
- -- NatureModel:getInstance():Fire(NatureModel.REQUEST_CCMD_EVENT, 16700)
- -- NatureModel:getInstance():Fire(NatureModel.REQUEST_CCMD_EVENT, 16701, 1)
- -- NatureModel:getInstance():Fire(NatureModel.REQUEST_CCMD_EVENT, 16701, 2)
- -- NatureModel:getInstance():Fire(NatureModel.REQUEST_CCMD_EVENT, 16701, 3)
- -- 刷新界面
- self:UpdateView()
- end
- end
-
- function DialogueChooseMessage:UpdateView()
- if IsNull(self.transform) then
- return
- end
- self.intellect_bg_obj:SetActive(self.choose_type == 1)
- self.nastic_bg_obj:SetActive(self.choose_type == 2)
- self.indecision_bg_obj:SetActive(self.choose_type == 3 or self.choose_type == 4)
- local str = DialogueChooseMessage.MSG_INFO[self.choose_type]
- self.value_tmp.text = str and string.format(str, self.choose_value) or ""
-
- self:PlayAnim()
- end
-
- function DialogueChooseMessage:PlayAnim( )
- if self.cont then
- cc.ActionManager:getInstance():removeAllActionsFromTarget(self.cont)
- end
-
- SetLocalPositionY(self.cont, 0)
- local in_pos_y, out_pos_y = 80, 90
- local function on_fly_end( )
- if self.cont then
- SetLocalPositionY(self.cont, 999999)
- cc.ActionManager:getInstance():removeAllActionsFromTarget(self.cont)
- end
- end
- local move_in_action = cc.MoveBy.New(0.7, 0 , in_pos_y)
- local move_out_action = cc.MoveBy.New(0.6, 0 , out_pos_y)
- local end_action = cc.CallFunc.New(on_fly_end)
- local action = cc.Sequence.New(move_in_action, cc.DelayTime.New(0.3), move_out_action, end_action)
- cc.ActionManager:getInstance():addAction(action, self.cont)
- end
-
- function DialogueChooseMessage:DestroySuccess( )
- if self.cont then
- cc.ActionManager:getInstance():removeAllActionsFromTarget(self.cont)
- end
- end
|