---
--- Generated by EmmyLua(https://github.com/EmmyLua)
--- Created by HUAFEI2.
--- DateTime: 2020/6/12 15:40
---
local LBaseEmitter = ImportScript("ugc_common/script/core/actor/emitter.lua").LBaseEmitter;
local LActor = ImportScript("ugc_common/script/pc/actor/actor_impl.lua").LActor;

---@class LEmitter
LEmitter = LEmitter or class("LEmitter", LBaseEmitter, LActor);

function LEmitter:ctor(kActor)
    self.m_kEmitter = tolua.cast(kActor, "Core::AEmitter")
    print("LEmitter:ctor()", self, kActor);
end

function LEmitter:dtor()
    print("LEmitter:dtor()");
end

---@param szParticleSystemPath string
---@return boolean
function LEmitter:SetParticleSystemRes(szParticleSystemPath)
    return self.m_kEmitter:SetParticleSystemRes(szParticleSystemPath);
end

---@return string
function LEmitter:GetParticleSystemRes()
    return self.m_kEmitter:GetParticleSystemRes();
end

---@return boolean
function LEmitter:IsPlaying()
    return self.m_kEmitter:IsPlaying();
end

---@param bLoop boolean
---@return boolean
function LEmitter:Play(bLoop)
    return self.m_kEmitter:Play(bLoop or false);
end

---@return boolean
function LEmitter:IsPaused()
    return self.m_kEmitter:IsPaused();
end

---@return boolean
function LEmitter:Pause()
    return self.m_kEmitter:Pause();
end

---@return boolean
function LEmitter:IsStopped()
    return self.m_kEmitter:IsStopped();
end

---@return boolean
function LEmitter:Stop()
    return self.m_kEmitter:Stop();
end

---@param fSpeed number
---@return boolean
function LEmitter:SetPlaySpeed(fSpeed)
    return self.m_kEmitter:SetPlaySpeed(fSpeed);
end

---@return number
function LEmitter:GetPlaySpeed()
    return self.m_kEmitter:GetPlaySpeed();
end
