Ejemplo n.º 1
0
    public Player(int id, PlayerData playerData)
    {
        if (playerData == null)
        {
            return;
        }
        m_playerData = playerData;
        m_id         = id;

        GameResModuel resModuel = GameStart.GetInstance().ResModuel;
        GameObject    player    = resModuel.LoadResources <GameObject>(EResourceType.Role, playerData.m_playerResPath);

        player = CommonFunc.Instantiate(player);
        if (player != null)
        {
            player.name = playerData.m_playerName;
            m_avatar    = player.AddComponent <PlayerAvatar>();

            m_anim = new PlayerAnim(player);
            m_anim.InitAnimator(playerData.m_animControllerName);

            GameObject collider = CommonFunc.GetChild(player, "Collider");
            m_collider = new PlayerCollider(playerData.m_moveArea, playerData.m_radius, playerData.m_angle, collider.GetComponent <BoxCollider2D>());

            MovePosition(m_playerData.m_bornPosition);
        }
    }
Ejemplo n.º 2
0
    public void UnLoadResUI(GameObject go)
    {
        GameResModuel resModuel = GameStart.GetInstance().ResModuel;

        GameObject.Destroy(go);
        m_uiDic.Remove(go.name);
        resModuel.ResourcesUnLoad();
    }
Ejemplo n.º 3
0
    public override void Init()
    {
        m_uiDic = new Dictionary <string, GameUIBase>();

        GameResModuel resModuel = GameStart.GetInstance().ResModuel;
        GameObject    ui        = resModuel.LoadResources <GameObject>(EResourceType.UI, "UIParent");

        m_uiParent = CommonFunc.Instantiate(ui);
        m_parent   = CommonFunc.GetChild(m_uiParent, "Canvas").transform;
    }
Ejemplo n.º 4
0
    public void InitAnimator(string controllerName)
    {
        if (m_animator == null)
        {
            return;
        }
        GameResModuel             resModuel  = GameStart.GetInstance().ResModuel;
        RuntimeAnimatorController controller = resModuel.LoadResources <RuntimeAnimatorController>(EResourceType.AnimController, controllerName);

        m_animator.runtimeAnimatorController = controller;
    }
Ejemplo n.º 5
0
    public float PlayAudio(string name)
    {
        m_souce = gameObject.AddComponent <AudioSource>();
        GameResModuel resmoduel = GameStart.GetInstance().ResModuel;

        m_clip       = resmoduel.LoadResources <AudioClip>(EResourceType.Audio, name);
        m_souce.clip = m_clip;
        m_souce.Play();
        m_time  = 0;
        m_start = true;
        return(m_clip == null ? 0f : m_clip.length);
    }
Ejemplo n.º 6
0
    public BombBall(BallData data, Action <string> action = null)
    {
        GameResModuel resModuel = GameStart.GetInstance().ResModuel;
        GameObject    ball      = resModuel.LoadResources <GameObject>(EResourceType.Ball, "BombBall");

        ball = CommonFunc.Instantiate(ball);
        if (ball != null)
        {
            m_ballInstance = ball.AddComponent <BombInstance>();
            m_ballInstance.SetBallRect(data.m_ballBoundArea);
            m_ballInstance.SetBounceAction(action);
        }
    }
Ejemplo n.º 7
0
    public void PlayBgAudio(string name)
    {
        StopAllCoroutines();

        m_bgName = name;
        AudioClip clip = null;

        if (!m_audioClipDic.TryGetValue(name, out clip))
        {
            GameResModuel resModuel = GameStart.GetInstance().ResModuel;
            clip = resModuel.LoadResources <AudioClip>(EResourceType.Audio, name);
        }
        PlayBgAudio(clip);
    }
Ejemplo n.º 8
0
    public void PreLoadAudio(List <string> list)
    {
        GameResModuel resModuel = GameStart.GetInstance().ResModuel;

        for (int i = 0; i < list.Count; i++)
        {
            if (!m_audioClipDic.ContainsKey(list[i]))
            {
                resModuel.LoadResourcesAsync <AudioClip>(EResourceType.Audio, list[i], res =>
                {
                    m_audioClipDic.Add(res.name, res as AudioClip);
                });
            }
        }
    }
Ejemplo n.º 9
0
    public T LoadResUI <T>(string name)
        where T : GameUIBase
    {
        GameResModuel resModuel = GameStart.GetInstance().ResModuel;
        GameObject    ui        = resModuel.LoadResources <GameObject>(EResourceType.UI, name);

        ui                         = CommonFunc.Instantiate(ui);
        ui.name                    = name;
        ui.transform.parent        = m_parent;
        ui.transform.localPosition = Vector3.zero;
        ui.transform.localScale    = Vector3.one;
        T script = ui.AddComponent <T>();

        m_uiDic.Add(name, script);
        return(script);
    }
Ejemplo n.º 10
0
    public BallMechine(BallMechineData data, BallData ballData, Vector3 leftPoint, Vector3 rightPoint)
    {
        m_mechineData   = data;
        m_ballData      = ballData;
        m_ballList      = new List <GameBall>();
        m_cacheBallList = new List <GameBall>();

        GameResModuel resModuel = GameStart.GetInstance().ResModuel;
        GameObject    mechine   = resModuel.LoadResources <GameObject>(EResourceType.BallMechine, "BallMechine");

        mechine    = CommonFunc.Instantiate(mechine);
        m_instance = mechine.AddComponent <BallMechineInstance>();
        mechine.transform.position = data.m_mechinePosition;
        mechine.transform.rotation = Quaternion.Euler(data.m_mechineRotation);
        m_instance.ServiceBall     = ServieBall;
        m_instance.SetLeftRightPoint(leftPoint, rightPoint);
    }
Ejemplo n.º 11
0
    private IEnumerator PlayBgAudioSync(List <string> list)
    {
        for (int i = 0; i < list.Count; i++)
        {
            m_bgName = name;
            AudioClip clip = null;
            if (!m_audioClipDic.TryGetValue(list[i], out clip))
            {
                GameResModuel resModuel = GameStart.GetInstance().ResModuel;
                clip = resModuel.LoadResources <AudioClip>(EResourceType.Audio, name);
            }

            PlayBgAudio(clip);

            yield return(new WaitForSeconds(clip.length));
        }
    }
Ejemplo n.º 12
0
    public GameEffect()
    {
        m_effectDic = new Dictionary <byte, EffectBase>
        {
            { (byte)EEffectType.Shield, new EffectShield(5f) },
            { (byte)EEffectType.BananaBall, new EffectBananaBall(10f) },
            { (byte)EEffectType.InkEffect, new EffectInk(6f) }
        };

        m_effectData = new GameEffectData();

        GameResModuel resModuel = GameStart.GetInstance().ResModuel;
        GameObject    prefab    = resModuel.LoadResources <GameObject>(EResourceType.Effect, "Warning");

        prefab           = CommonFunc.Instantiate(prefab);
        m_effectInstance = prefab.AddComponent <GameEffectInstance>();
        m_effectInstance.gameObject.SetActive(false);

        m_effecting      = false;
        m_createNextTime = Time.time + m_effectData.GetRandomTime();

        m_preEffectType = EEffectType.MaxType;
    }