Example #1
0
 public void AddPanzee(string name, Panzee panzee)
 {
     panzeeDict.Add(name, panzee);
     if (name.Equals(devName))
     {
         int idx = panzeeArray.Length - 1;
         panzeeArray[idx]           = panzee;
         panzee.panzeeIdx           = idx;
         panzee.keyButton.text      = (idx + 1).ToString();
         panzee.chatTag             = "Dev";
         panzee.itemRenderer.sprite = itemSprites[idx];
         CameraManager.Instance.cineGroup.AddMember(panzee.tf, 1f, 3f);
         return;
     }
     for (int i = 0; i < panzeeArray.Length - 1; i++)
     {
         if (panzeeArray[i] == null)
         {
             panzeeArray[i]             = panzee;
             panzee.panzeeIdx           = i;
             panzee.chatTag             = (i + 1).ToString();
             panzee.keyButton.text      = (i + 1).ToString();
             panzee.itemRenderer.sprite = itemSprites[i];
             PortraitManager.Instance.SetPanzee(i, panzee);
             CameraManager.Instance.cineGroup.AddMember(panzee.tf, 1f, 3f);
             break;
         }
     }
 }
Example #2
0
    public void OnHitEvent()
    {
        Panzee panzee = (Wakta.Instance.selected as MonoBehaviour)?.GetComponent <Panzee>();

        if (panzee != null)
        {
            source.PlayOneShot(attackClips[Random.Range(0, attackClips.Length)]);
            panzee.Damage(Wakta.Instance.damage);
            panzee.impulseSource.GenerateImpulse();
            float x;
            if (Input.GetKey(KeyCode.A))
            {
                x = -3;
            }
            else if (Input.GetKey(KeyCode.D))
            {
                x = 3;
            }
            else
            {
                x = panzee.transform.position.x > Wakta.Instance.transform.position.x ? 3 : -3;
            }
            panzee.rb.AddForce(new Vector2(x, 5), ForceMode2D.Impulse);
        }
    }
Example #3
0
 private void OnTriggerExit2D(Collider2D collision)
 {
     if (collision.CompareTag("Panzee"))
     {
         Panzee panzee = collision.GetComponent <Panzee>();
         insidePanzee.Remove(panzee);
     }
 }
Example #4
0
 public void SetPanzee(int idx, Panzee panzee)
 {
     images[idx].gameObject.SetActive(true);
     names[idx].text    = panzee.name;
     names[idx].enabled = true;
     //LayoutRebuilder.ForceRebuildLayoutImmediate(names[idx].rectTransform);
     LayoutRebuilder.ForceRebuildLayoutImmediate(rects[idx]);
 }
Example #5
0
    public void HandleCommand(TwitchCommandData data)
    {
        Panzee panzee = null;

        PanzeeManager.Instance.panzeeDict.TryGetValue(data.Author, out panzee);
        if (panzee != null)
        {
            string lastWord = data.Message.Substring(0 + (TwitchCommands.CmdPrefix + TwitchCommands.CmdSuicide).Length).TrimStart(' ');
            panzee.Suicide(lastWord);
        }
    }
Example #6
0
    public void HandleCommand(TwitchCommandData data)
    {
        Panzee panzee = null;

        PanzeeManager.Instance.panzeeDict.TryGetValue(data.Author, out panzee);

        if (panzee != null)
        {
            panzee.SetCommand(Panzee.Command.Stop);
        }
    }
Example #7
0
 public void SetAlphaFocusPanzee(Panzee panzee)
 {
     for (int i = 0; i < panzeeArray.Length; i++)
     {
         if (panzeeArray[i] != null && panzeeArray[i] != panzee)
         {
             panzeeArray[i].SetAlpha(0.3f);
         }
     }
     panzee.SetAlpha(1);
 }
Example #8
0
 public static void RespawnAll()
 {
     for (int i = 0; i < PanzeeManager.Instance.panzeeArray.Length; i++)
     {
         Panzee panzee = PanzeeManager.Instance.panzeeArray[i];
         if (panzee != null && panzee.gameObject.activeSelf)
         {
             panzee.Respawn();
         }
     }
 }
Example #9
0
    public void HandleCommand(TwitchCommandData data)
    {
        Panzee panzee = null;

        PanzeeManager.Instance.panzeeDict.TryGetValue(data.Author, out panzee);
        if (panzee != null)
        {
            bool success = float.TryParse(data.Message.Substring(0 + (TwitchCommands.CmdPrefix + TwitchCommands.CmdRight).Length).TrimStart(' '), out panzee.cmdTimer);
            if (!success)
            {
                panzee.cmdTimer = 9999;
            }
            panzee.SetCommand(Panzee.Command.Right);
        }
    }
Example #10
0
    IEnumerator Start()
    {
        Wakta.Instance.Pause();
        for (int i = 0; i < PanzeeManager.Instance.panzeeArray.Length; i++)
        {
            Panzee panzee = PanzeeManager.Instance.panzeeArray[i];
            if (panzee != null && panzee.gameObject.activeSelf)
            {
                panzee.Pause();
            }
        }

        Vector2 pos = GameObject.FindGameObjectWithTag("Respawn").transform.position;

        for (int i = 0; i < RIPManager.Instance.RIPList.Count; i++)
        {
            pos.x += 1;
            RIPManager.Instance.RIPList[i].tf.position = pos;
        }
        FadeManager.Instance.FadeIn(1);
        AsyncOperation async = SceneManager.LoadSceneAsync(sceneName.CompareTo(string.Empty) == 0 ? GameManager.LastScene : sceneName, mode);

        async.allowSceneActivation = false;
        float t = waitTime;

        do
        {
            if (t <= waitTime - 1 && Input.anyKeyDown)
            {
                break;
            }
            yield return(null);

            t -= Time.deltaTime;
        } while (t >= 0 || !isAutoQuit);

        t = 1;
        do
        {
            yield return(null);

            t -= Time.deltaTime;
        } while (t >= 0);
        async.allowSceneActivation = true;
        yield return(null);
    }
Example #11
0
 // Use this for initialization
 void Start()
 {
     Wakta.Instance.Respawn();
     Wakta.Instance.UnPause();
     for (int i = 0; i < PanzeeManager.Instance.panzeeArray.Length; i++)
     {
         Panzee panzee = PanzeeManager.Instance.panzeeArray[i];
         if (panzee != null && panzee.gameObject.activeSelf)
         {
             panzee.Respawn();
             panzee.UnPause();
         }
     }
     if (FadeManager.Instance != null)
     {
         FadeManager.Instance.FadeIn(1);
     }
 }
Example #12
0
    public void SpawnPanzee(string name, string greeting)
    {
        if (!isSpawnable)
        {
            return;
        }
        Panzee panzee = panzeePool.DequeueObjectPool().GetComponent <Panzee>();

        panzee.name = name;
        panzee.hpParent.SetActive(false);
        if (Wakta.Instance.selected != null)
        {
            panzee.SetAlpha(0.3f);
        }
        AddPanzee(name, panzee);
        panzee.gameObject.SetActive(true);
        panzee.SetText(greeting);
        panzee.Respawn();
    }
Example #13
0
 private void Select(int index)
 {
     if (index == 0)
     {
         if (this.Equals(selected))       // Foucs Out
         {
             selected = null;
             CameraManager.Instance.FocusOut();
             SetAlpha(1);
             PanzeeManager.Instance.SetAlphaFocusPanzee(true);
         }
         else
         {
             selected = this;
             CameraManager.Instance.Focus(tf);
             SetAlpha(1);
             PanzeeManager.Instance.SetAlphaFocusPanzee(false);
         }
     }
     else
     {
         Panzee panzee = PanzeeManager.Instance.panzeeArray[index - 1];
         if (panzee != null && panzee.Equals(selected))               // Focus Out
         {
             selected = null;
             PanzeeManager.Instance.SetAlphaFocusPanzee();
             CameraManager.Instance.FocusOut();
             SetAlpha(1);
         }
         else if (panzee != null)
         {
             selected = panzee;
             PanzeeManager.Instance.SetAlphaFocusPanzee(panzee);
             CameraManager.Instance.Focus(panzee.tf);
             SetAlpha(1);
         }
     }
 }
Example #14
0
    public void SpawnRIP(Panzee target, string lastWord)
    {
        GameObject obj = RIPPool.DequeueObjectPool();
        Vector2    pos = target.transform.position;

        obj.transform.position = pos;
        RIP rip = obj.GetComponent <RIP>();

        if (!lastWord.Equals(String.Empty))
        {
            rip.text.text = lastWord;
        }
        else
        {
            rip.text.text = target.text.text;
        }
        LayoutRebuilder.ForceRebuildLayoutImmediate(rip.textBubble);
        rip.textBubble.gameObject.SetActive(!rip.text.text.Equals(String.Empty));
        rip.nameText.text = target.name;
        RIPList.Add(rip);

        obj.SetActive(true);
    }
Example #15
0
    public void HandleCommand(TwitchCommandData data)
    {
        if (!PanzeeManager.Instance.IsSpawnable)
        {
            return;
        }
        Panzee panzee = null;

        PanzeeManager.Instance.panzeeDict.TryGetValue(data.Author, out panzee);
        if (data.Author.Equals(PanzeeManager.devName))
        {
            if (panzee == null)
            {
                PanzeeManager.Instance.SpawnPanzee(data.Author, "!입장");
            }
            return;
        }
        if (panzee != null)
        {
            string lastWord = data.Message.Substring(0 + (TwitchCommands.CmdPrefix + TwitchCommands.CmdSuicide).Length).TrimStart(' ');
            panzee.Suicide("!입장을 쳐서 밴당했습니다");
        }
        PanzeeManager.Instance.banDict.Add(data.Author, true);
    }
Example #16
0
    void Update()
    {
        if (tf.position.y <= -20)
        {
            for (int i = 0; i < PanzeeManager.Instance.panzeeArray.Length; i++)
            {
                Panzee panzee = PanzeeManager.Instance.panzeeArray[i];
                if (panzee != null)
                {
                    panzee.Suicide(panzee.text.text);
                }
            }
            SceneManager.LoadScene("Loading");
        }
        if (rb.velocity.x > 0.5f)
        {
            tf.localScale        = new Vector3(scale, scale, 1);
            keyButton.localScale = tf.localScale;
        }
        else if (rb.velocity.x < -0.5f)
        {
            tf.localScale        = new Vector3(-scale, scale, 1);
            keyButton.localScale = tf.localScale;
        }

        if (Input.GetKeyDown(KeyCode.BackQuote))
        {
            Select(0);
        }
        else if (Input.GetKeyDown(KeyCode.Alpha1))
        {
            Select(1);
        }
        else if (Input.GetKeyDown(KeyCode.Alpha2))
        {
            Select(2);
        }
        else if (Input.GetKeyDown(KeyCode.Alpha3))
        {
            Select(3);
        }
        else if (Input.GetKeyDown(KeyCode.Alpha4))
        {
            Select(4);
        }
        else if (Input.GetKeyDown(KeyCode.Alpha5))
        {
            Select(5);
        }
        else if (Input.GetKeyDown(KeyCode.Alpha6))
        {
            Select(6);
        }

        if (Input.GetKeyDown(KeyCode.Space))   //호치
        {
            if (selected != null && !selected.Equals(this))
            {
                Panzee panzee = (selected as MonoBehaviour).GetComponent <Panzee>();
                if (panzee != null)
                {
                    animator.SetTrigger("attack");
                }
            }
        }

        if (Input.GetKeyDown(KeyCode.LeftShift))          //연결
        {
            if (selected != null && !selected.Equals(this))
            {
                Panzee panzee = (selected as MonoBehaviour).GetComponent <Panzee>();

                if (!panzee.joint.enabled && insidePanzee.Contains(panzee))
                {
                    panzee.joint.enabled = true;

                    panzee.neckLine.gameObject.SetActive(true);
                    if (panzee.joint.connectedBody == null)
                    {
                        panzee.joint.connectedBody = rb;
                    }
                }
                else
                {
                    panzee.joint.enabled = false;
                    panzee.neckLine.gameObject.SetActive(false);
                }
            }
        }

        if (Input.GetKeyDown(KeyCode.R))
        {
            SceneManager.LoadScene("Loading");
        }
    }
Example #17
0
    private void ReadChat()
    {
        if (twitchClient.Available > 0)
        {
            readedChat.text = (++readed).ToString();
            var message = reader.ReadLine();
            if (message.Contains("PRIVMSG"))
            {
                Panzee panzee = null;

                var splitPoint = message.IndexOf("!", 1);
                var chatName   = message.Substring(1, splitPoint - 1);

                PanzeeManager.Instance.panzeeDict.TryGetValue(chatName, out panzee);

                splitPoint = message.IndexOf(":", 1);
                message    = message.Substring(splitPoint + 1);

                if (chatName.CompareTo("yangkiru") == 0)
                {
                    PanzeeManager.Instance.panzeeDict.TryGetValue(chatName, out panzee);
                    if (panzee == null)
                    {
                        splitPoint = message.IndexOf(":", 1);
                        var temp = message.Substring(splitPoint + 1);
                        Join(chatName, temp);
                    }
                }

                if (panzee != null && message[0].CompareTo('!') == 0)
                {
                    char command = message[1];
                    message = message.Substring(2);
                    bool success;
                    switch (command)
                    {
                    case 'd':
                        success = float.TryParse(message.TrimStart(' '), out panzee.cmdTimer);
                        if (!success)
                        {
                            panzee.cmdTimer = 9999;
                        }
                        panzee.SetCommand(Panzee.Command.Right);
                        return;

                    case 'D':
                        success = float.TryParse(message.TrimStart(' '), out panzee.cmdTimer);
                        if (!success)
                        {
                            panzee.cmdTimer = 9999;
                        }
                        panzee.SetCommand(Panzee.Command.RightRun);
                        return;

                    case 'a':
                        success = float.TryParse(message.TrimStart(' '), out panzee.cmdTimer);
                        if (!success)
                        {
                            panzee.cmdTimer = 9999;
                        }
                        panzee.SetCommand(Panzee.Command.Left);
                        return;

                    case 'A':
                        success = float.TryParse(message.TrimStart(' '), out panzee.cmdTimer);
                        if (!success)
                        {
                            panzee.cmdTimer = 9999;
                        }
                        panzee.SetCommand(Panzee.Command.LeftRun);
                        return;

                    case 'w':
                        success = float.TryParse(message.TrimStart(' '), out panzee.jumpTimer);
                        if (!success)
                        {
                            panzee.jumpTimer = 0;
                        }
                        panzee.jumpTimerSet = 9999;
                        panzee.SetCommand(Panzee.Command.Jump);
                        return;

                    case 'W':
                        success = float.TryParse(message.TrimStart(' '), out panzee.jumpTimerSet);
                        if (!success)
                        {
                            panzee.jumpTimerSet = 0.5f;
                        }
                        panzee.jumpTimer = 0;
                        panzee.SetCommand(Panzee.Command.JumpAuto);
                        return;

                    case 's':
                    case 'S':
                        panzee.SetCommand(Panzee.Command.Wait);
                        return;

                    case 'q':
                        success = float.TryParse(message.TrimStart(' '), out panzee.cmdTimer);
                        if (!success)
                        {
                            panzee.cmdTimer = 9999;
                        }
                        panzee.jumpTimer    = 0;
                        panzee.jumpTimerSet = 9999;
                        panzee.SetCommand(Panzee.Command.LeftJump);
                        return;

                    case 'Q':
                        success = float.TryParse(message.TrimStart(' '), out panzee.cmdTimer);
                        if (!success)
                        {
                            panzee.cmdTimer = 9999;
                        }
                        panzee.jumpTimer    = 0;
                        panzee.jumpTimerSet = 9999;
                        panzee.SetCommand(Panzee.Command.LeftJumpRun);
                        return;

                    case 'e':
                        success = float.TryParse(message.TrimStart(' '), out panzee.cmdTimer);
                        if (!success)
                        {
                            panzee.cmdTimer = 9999;
                        }
                        panzee.jumpTimer    = 0;
                        panzee.jumpTimerSet = 9999;
                        panzee.SetCommand(Panzee.Command.RightJump);
                        return;

                    case 'E':
                        success = float.TryParse(message.TrimStart(' '), out panzee.cmdTimer);
                        if (!success)
                        {
                            panzee.cmdTimer = 9999;
                        }
                        panzee.jumpTimer    = 0;
                        panzee.jumpTimerSet = 9999;
                        panzee.SetCommand(Panzee.Command.RightJumpRun);
                        return;

                    default:
                        message = string.Format("{0}은/는 명령어를 칠 줄 몰라요!", chatName);
                        break;
                    }

                    if (message.CompareTo(string.Empty) != 0)
                    {
                        panzee.SetText(message);
                    }
                }
                else if (panzee != null)
                {
                    panzee.SetText(message);
                }
                else if (PanzeeManager.Instance.panzeeDict.Count - (PanzeeManager.Instance.panzeeArray[5] != null ? 1 : 0) < 5)
                {
                    Join(chatName, message);
                }
            }
        }
    }
Example #18
0
    private void Update()
    {
        if (!isDebug)
        {
            return;
        }

        if (Input.GetKeyDown(KeyCode.P))
        {
            if (!Input.GetKey(KeyCode.LeftShift))
            {
                Debug.Log("DEBUG:Spawn UNKNOWN Panzee");
                for (int i = 0; i < PanzeeManager.Instance.panzeeArray.Length - 1; i++)
                {
                    Panzee panzee = PanzeeManager.Instance.panzeeArray[i];
                    if (panzee == null)
                    {
                        PanzeeManager.Instance.SpawnPanzee();
                        break;
                    }
                }
            }
            else
            {
                Debug.Log("DEBUG:Remove Last Panzee");
                for (int i = PanzeeManager.Instance.panzeeArray.Length - 1; i >= 0; i--)
                {
                    if (PanzeeManager.Instance.panzeeArray[i] != null)
                    {
                        PanzeeManager.Instance.panzeeArray[i].Damage(9999);
                        break;
                    }
                }
            }
        }
        if (Wakta.Instance.selected != null && !Wakta.Instance.selected.Equals(Wakta.Instance))
        {
            Panzee panzee = (Wakta.Instance.selected as MonoBehaviour).GetComponent <Panzee>();

            panzee.cmdTimer = 9999;
            if (Input.GetKeyDown(KeyCode.A))
            {
                panzee.SetCommand(!Input.GetKey(KeyCode.RightShift) ? Panzee.Command.Left : Panzee.Command.LeftRun);
            }
            else if (Input.GetKeyDown(KeyCode.D))
            {
                panzee.SetCommand(!Input.GetKey(KeyCode.RightShift) ? Panzee.Command.Right : Panzee.Command.RightRun);
            }
            else if (Input.GetKeyDown(KeyCode.W))
            {
                if (Input.GetKey(KeyCode.RightShift))
                {
                    panzee.jumpTimerSet = 0.5f;
                    panzee.SetCommand(Panzee.Command.JumpAuto);
                }
                else
                {
                    panzee.jumpTimer    = 0;
                    panzee.jumpTimerSet = 9999;
                    panzee.SetCommand(Panzee.Command.Jump);
                }
            }
            else if (Input.GetKeyDown(KeyCode.S))
            {
                if (Input.GetKey(KeyCode.RightShift))
                {
                    panzee.cmdTimer = 1;
                }
                panzee.SetCommand(Panzee.Command.Stop);
            }
            else if (Input.GetKeyDown(KeyCode.Q))
            {
                panzee.cmdTimer = 9999;
                panzee.SetCommand(!Input.GetKey(KeyCode.RightShift)
                                ? Panzee.Command.LeftJump
                                : Panzee.Command.LeftJumpRun);
            }
            else if (Input.GetKeyDown(KeyCode.E))
            {
                panzee.cmdTimer = 9999;
                panzee.SetCommand(!Input.GetKey(KeyCode.RightShift)
                                ? Panzee.Command.RightJump
                                : Panzee.Command.RightJumpRun);
            }

            if (Input.GetKeyDown(KeyCode.T))
            {
                panzee.SetText("채팅 테스트");
            }
        }
    }