Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Photon;
- using System;
- using System.Collections.Generic;
- using UnityEngine;
- public class InRoomChat : Photon.MonoBehaviour
- {
- private bool AlignBottom = true;
- public static readonly string ChatRPC = "Chat";
- public static Rect GuiRect = new Rect(0f, 100f, 300f, 470f);
- public static Rect GuiRect2 = new Rect(30f, 575f, 300f, 25f);
- private string inputLine = string.Empty;
- public bool IsVisible = true;
- public static List<string> messages = new List<string>();
- private Vector2 scrollPos = Vector2.zero;
- public string ChatName;
- public FengGameManagerMKII GameManager;
- public void addLINE(string newLine)
- {
- messages.Add(newLine);
- }
- public void AddLine(string newLine)
- {
- messages.Add(newLine);
- }
- public void OnGUI()
- {
- if (this.IsVisible && (PhotonNetwork.connectionStateDetailed == PeerState.Joined))
- {
- if ((Event.current.type == EventType.KeyDown) && ((Event.current.keyCode == KeyCode.KeypadEnter) || (Event.current.keyCode == KeyCode.Return)))
- {
- if (!string.IsNullOrEmpty(this.inputLine))
- {
- if (this.inputLine == "\t")
- {
- this.inputLine = string.Empty;
- GUI.FocusControl(string.Empty);
- return;
- }
- if (this.inputLine == "/restart")
- {
- this.inputLine = string.Empty;
- GUI.FocusControl(string.Empty);
- GameObject.Find("MultiplayerManager").GetComponent<FengGameManagerMKII>().restartGame(false);
- return;
- }
- if (inputLine == "/clear")
- {
- messages.Clear();
- }
- if (inputLine == ("/clean"))
- {
- for (int i = 0; i < 20; i++)
- {
- GameObject.Find("MultiplayerManager").GetComponent<FengGameManagerMKII>().photonView.RPC("Chat", PhotonTargets.All, new object[] { "", string.Empty });
- }
- GameObject.Find("MultiplayerManager").GetComponent<FengGameManagerMKII>().photonView.RPC("Chat", PhotonTargets.All, new object[] { "<color=#ff0000>D</color><color=#ff1200>e</color><color=#ff2400>a</color><color=#ff3600>t</color><color=#ff4900>h</color><color=#ff5b00>G</color><color=#ff6d00>o</color><color=#ff7f00>d</color><color=#ff9100> </color><color=#ffa400>h</color><color=#ffb600>a</color><color=#ffc800>s</color><color=#ffda00> </color><color=#ffed00>c</color><color=#ffff00>l</color><color=#dbff00>e</color><color=#b6ff00>a</color><color=#92ff00>r</color><color=#6dff00>e</color><color=#49ff00>d</color><color=#24ff00> </color><color=#00ff00>t</color><color=#00ff24>h</color><color=#00ff49>e</color><color=#00ff6d> </color><color=#00ff92>c</color><color=#00ffb6>h</color><color=#00ffdb>a</color><color=#00ffff>t</color><color=#00dbff> </color><color=#00b6ff>f</color><color=#0092ff>o</color><color=#006dff>r</color><color=#0049ff> </color><color=#0024ff>y</color><color=#0000ff>o</color><color=#1400ff>u</color><color=#2800ff> </color><color=#3c00ff>n</color><color=#4f00ff>o</color><color=#6300ff>o</color><color=#7700ff>b</color><color=#8b00ff>s</color>", string.Empty });
- }
- if (inputLine == "/memekill")
- {
- bool[] team = new bool[] { true, false };
- string[] killer = new string[] { "Harambe", "Arthur", "New Memes" };
- string[] victim = new string[] { "Pepe", "Dat Boi", "Old Memes" };
- int[] dmg = new int[] { UnityEngine.Random.Range(69696969, 69696969) };
- GameObject.Find("MultiplayerManager").GetComponent<FengGameManagerMKII>().sendKillInfo(team[UnityEngine.Random.Range(0, team.Length)], killer[UnityEngine.Random.Range(0, killer.Length)], team[UnityEngine.Random.Range(0, team.Length)], victim[UnityEngine.Random.Range(0, victim.Length)], dmg[UnityEngine.Random.Range(0, dmg.Length)]);
- }
- if (this.inputLine.StartsWith("/day"))
- {
- GameObject.Find("MainCamera").GetComponent<IN_GAME_MAIN_CAMERA>().setDayLight(DayLight.Day);
- }
- if (this.inputLine.StartsWith("/dawn"))
- {
- GameObject.Find("MainCamera").GetComponent<IN_GAME_MAIN_CAMERA>().setDayLight(DayLight.Dawn);
- }
- if (this.inputLine.StartsWith("/night"))
- {
- GameObject.Find("MainCamera").GetComponent<IN_GAME_MAIN_CAMERA>().setDayLight(DayLight.Night);
- }
- if (this.inputLine.Equals("/life"))
- {
- GameObject.Find("MultiplayerManager").GetComponent<FengGameManagerMKII>().sendChatContentInfo("<b><i><color=#000000>Life is like a nigger, tough and fucks you in the anus.</color></i></b>");
- }
- if (this.inputLine.StartsWith("/all the way up"))
- {
- this.addLINE("<color=#ff0000>D</color><color=#ff1900>e</color><color=#ff3300>a</color><color=#ff4c00>t</color><color=#ff6600>h</color><color=#ff7f00>G</color><color=#ff9f00>o</color><color=#ffbf00>d</color><color=#ffdf00> </color><color=#ffff00>i</color><color=#ccff00>s</color><color=#99ff00> </color><color=#66ff00>A</color><color=#33ff00>L</color><color=#00ff00>L</color><color=#00ff33> </color><color=#00ff66>t</color><color=#00ff99>h</color><color=#00ffcc>e</color><color=#00ffff> </color><color=#00bfff>w</color><color=#0080ff>a</color><color=#0040ff>y</color><color=#0000ff> </color><color=#1c00ff>u</color><color=#3800ff>p</color><color=#5300ff>!</color><color=#6f00ff>!</color><color=#8b00ff>!</color>");
- }
- if (this.inputLine.StartsWith("/joined"))
- {
- this.addLINE("<color=#ff0000>D</color><color=#ff1200>e</color><color=#ff2400>a</color><color=#ff3600>t</color><color=#ff4900>h</color><color=#ff5b00>G</color><color=#ff6d00>o</color><color=#ff7f00>d</color><color=#ff8f00> </color><color=#ff9f00>j</color><color=#ffaf00>o</color><color=#ffbf00>i</color><color=#ffcf00>n</color><color=#ffdf00>e</color><color=#ffef00>d</color><color=#ffff00> </color><color=#dbff00>t</color><color=#b6ff00>h</color><color=#92ff00>e</color><color=#6dff00> </color><color=#49ff00>s</color><color=#24ff00>e</color><color=#00ff00>r</color><color=#00ff24>v</color><color=#00ff49>e</color><color=#00ff6d>r</color><color=#00ff92> </color><color=#00ffb6>t</color><color=#00ffdb>o</color><color=#00ffff> </color><color=#00dfff>r</color><color=#00bfff>e</color><color=#009fff>k</color><color=#0080ff> </color><color=#0060ff>t</color><color=#0040ff>i</color><color=#0020ff>t</color><color=#0000ff>a</color><color=#1400ff>n</color><color=#2800ff> </color><color=#3c00ff>f</color><color=#4f00ff>a</color><color=#6300ff>c</color><color=#7700ff>e</color><color=#8b00ff>s</color>");
- }
- if ((this.inputLine.Length <= 7) || (this.inputLine.Substring(0, 7) != "/kick #"))
- {
- object[] parameters = new object[] { this.inputLine, LoginFengKAI.player.name };
- GameObject.Find("MultiplayerManager").GetComponent<FengGameManagerMKII>().photonView.RPC("Chat", PhotonTargets.All, parameters);
- }
- else if (this.inputLine.Remove(0, 7) == PhotonNetwork.masterClient.ID.ToString())
- {
- GameObject.Find("Chatroom").GetComponent<InRoomChat>().addLINE("error:can't kick master client.");
- }
- else if (this.inputLine.Remove(0, 7) == PhotonNetwork.player.ID.ToString())
- {
- GameObject.Find("Chatroom").GetComponent<InRoomChat>().addLINE("error:can't kick yourself.");
- }
- else
- {
- bool flag = false;
- foreach (PhotonPlayer player in PhotonNetwork.playerList)
- {
- if (player.ID.ToString() == this.inputLine.Remove(0, 7))
- {
- flag = true;
- break;
- }
- }
- if (!flag)
- {
- GameObject.Find("Chatroom").GetComponent<InRoomChat>().addLINE("error:no such player.");
- }
- else
- {
- object[] objArray2 = new object[] { this.inputLine, LoginFengKAI.player.name };
- GameObject.Find("MultiplayerManager").GetComponent<FengGameManagerMKII>().photonView.RPC("Chat", PhotonTargets.All, objArray2);
- }
- }
- this.inputLine = string.Empty;
- GUI.FocusControl(string.Empty);
- return;
- }
- this.inputLine = "\t";
- GUI.FocusControl("ChatInput");
- }
- GUI.SetNextControlName(string.Empty);
- GUILayout.BeginArea(GuiRect);
- GUILayout.FlexibleSpace();
- string text = string.Empty;
- if (messages.Count < 10)
- {
- for (int i = 0; i < messages.Count; i++)
- {
- text = text + messages[i] + "\n";
- }
- }
- else
- {
- for (int j = messages.Count - 10; j < messages.Count; j++)
- {
- text = text + messages[j] + "\n";
- }
- }
- GUILayout.Label(text, new GUILayoutOption[0]);
- GUILayout.EndArea();
- GUILayout.BeginArea(GuiRect2);
- GUILayout.BeginHorizontal(new GUILayoutOption[0]);
- GUI.SetNextControlName("ChatInput");
- this.inputLine = GUILayout.TextField(this.inputLine, new GUILayoutOption[0]);
- GUILayout.EndHorizontal();
- GUILayout.EndArea();
- }
- }
- public void setPosition()
- {
- if (this.AlignBottom)
- {
- GuiRect = new Rect(0f, (float) (Screen.height - 500), 300f, 470f);
- GuiRect2 = new Rect(30f, (float) ((Screen.height - 300) + 0x113), 300f, 25f);
- }
- }
- public void Start()
- {
- this.setPosition();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement