public void ReceiveMessage(string type, string message)
    {
        switch (type)
        {
        case "welcome":
            WelcomeMsg welcomeMsg = JsonUtility.FromJson <WelcomeMsg>(message);
            chat.addMessage($"[Server]: Du bist an Position ({welcomeMsg.position})");
            world.MoveTo(StringToVector3(welcomeMsg.position));
            break;

        case "chat":
            ChatMessageIn chatMsg = JsonUtility.FromJson <ChatMessageIn>(message);
            chat.addMessage(string.Format("[{0}]: {1}", chatMsg.world ? chatMsg.sender + " an Alle": chatMsg.sender, chatMsg.content));
            break;

        case "end":
            chat.addMessage("[Sever]: Verbindung beendet");
            break;

        case "state":
            StateMessage stateMsg = JsonUtility.FromJson <StateMessage>(message);
            chat.addMessage("[Server]: Neue Positionen");

            foreach (KeyValuePair <string, string> item in stateMsg.getPositions())
            {
                chat.addMessage($"[Server]: {item.Key} bei {item.Value}");
            }

            foreach (KeyValuePair <string, Vector3> item in stateMsg.getPostionVectors())
            {
                gameController.createWorld(item.Key, item.Value);
            }



            break;
        }
    }