Ejemplo n.º 1
0
    public bool ApplyModificators(CharacterCreationScript player, SkillsManagerScript skillManager)
    {
        player.BonusStatPoints = BonusStatPoints;

        if (modifiedStatDeclaration == null || modifiedStatDeclaration.Length == 0)
        {
            modifiedStatDeclaration =
                new CharacterAttribute[]
            {
                CharacterAttribute.Agility,
                CharacterAttribute.Perception,
                CharacterAttribute.Character,
                CharacterAttribute.Wits,
                CharacterAttribute.Physique
            };
        }

        if (modifiedStatValues == null || modifiedStatValues.Length == 0)
        {
            modifiedStatValues =
                new int[]
            {
                Agility,
                Perception,
                Character,
                Wits,
                Physique
            };
        }

        return
            (player.SetBackground(this) &&
             player.ApplyBackgroundModificators(modifiedStatDeclaration, modifiedStatValues) &&
             skillManager.ApplyBackgroundSkills(skillsGranted));
    }
    void Awake()
    {
        StatText        = gameObject.GetComponent <Text>();
        characterScript = GameObject.Find("Game Info Component").GetComponent <CharacterCreationScript>();

        characterScript.RegisterToNotifyStatChange(UpdatedStat);

        UpdatedStat();
    }
    // Use this for initialization
    void Start()
    {
        AttributeValueText = transform.Find("Value").GetComponent <Text>();
        creationScript     = GameObject.Find("Game Info Component").GetComponent <CharacterCreationScript>();

        if (creationScript != null)
        {
            creationScript.RegisterToNotifyStatChange(UpdateDisplayedValue);
        }

        UpdateDisplayedValue();
    }
Ejemplo n.º 4
0
    void Awake()
    {
        CharacterCreationScript toDestroy = gameObject.GetComponent <CharacterCreationScript>();

        Destroy(toDestroy, 1.0f);

        DontDestroyOnLoad(gameObject);
        StartCoroutine(TryRegisteringToTimeEvent());

        portrait = GameObject.Find("Displayed Portrait").GetComponent <Image>().sprite;

        //RegisterToPlayerHurt(Test);
        RegisterToSanityChanged(SaveSanityPercentageBetweenGames);
    }
Ejemplo n.º 5
0
    public void ServerResponceHandler()
    {
        if (TcpClnt.Connected)
        {
            NetworkStream NtwrkStrm   = TcpClnt.GetStream();
            IFormatter    MyFormatter = new BinaryFormatter();
            if (NtwrkStrm.DataAvailable)
            {
                try
                {
                    string type = (string)MyFormatter.Deserialize(NtwrkStrm);
                    NtwrkStrm.Flush();
                    if (type == "Login")
                    {
                        UnityEngine.Debug.Log("Login Info Recived");
                        string response = (string)MyFormatter.Deserialize(NtwrkStrm);
                        NtwrkStrm.Flush();
                        MMScript.LoginResponseHandler(response);
                        if (response == "Logging in")
                        {
                            PlayerClass = (PlayerInfo)MyFormatter.Deserialize(NtwrkStrm);
                            NtwrkStrm.Flush();
                            UnityEngine.Debug.Log("PlayerClass.Name = " + PlayerClass.UserName);
                            LoadCCLevel();
                        }
                        return;
                    }//2
                    else if (type == "AddUser")
                    {
                        string response = (string)MyFormatter.Deserialize(NtwrkStrm);
                        NtwrkStrm.Flush();
                        MMScript.AddUserResponseHandler(response);
                        return;
                    }
                    else if (type == "CCRequest")
                    {
                        string responce = (string)MyFormatter.Deserialize(NtwrkStrm);
                        NtwrkStrm.Flush();

                        if (responce == "Accepted")
                        {
                            PlayerClass = (PlayerInfo)MyFormatter.Deserialize(NtwrkStrm);
                        }

                        CCScript = GameObject.Find("CCCanvas").GetComponent <CharacterCreationScript>();
                        CCScript.SubmitButtonClickedResponceHandler(responce);
                    }
                    else if (type == "HeroSelectionRequest")
                    {
                        PlayerClass = (PlayerInfo)MyFormatter.Deserialize(NtwrkStrm);
                        NtwrkStrm.Flush();
                        if (PlayerClass.SelectedHero == PlayerClass.H1)
                        {
                            CCScript = GameObject.Find("CCCanvas").GetComponent <CharacterCreationScript>();
                            CCScript.Character1ButtonClickedResponceHandler();
                        }
                        else if (PlayerClass.SelectedHero == PlayerClass.H2)
                        {
                            CCScript = GameObject.Find("CCCanvas").GetComponent <CharacterCreationScript>();
                            CCScript.Character2ButtonClickedResponceHandler();
                        }
                        else if (PlayerClass.SelectedHero == PlayerClass.H3)
                        {
                            CCScript = GameObject.Find("CCCanvas").GetComponent <CharacterCreationScript>();
                            CCScript.Character3ButtonClickedResponceHandler();
                        }
                        else if (PlayerClass.SelectedHero == PlayerClass.H4)
                        {
                            CCScript = GameObject.Find("CCCanvas").GetComponent <CharacterCreationScript>();
                            CCScript.Character4ButtonClickedResponceHandler();
                        }
                    }
                    else if (type == "DeleteRequest")
                    {
                        PlayerClass = (PlayerInfo)MyFormatter.Deserialize(NtwrkStrm);
                        NtwrkStrm.Flush();
                        CCScript = GameObject.Find("CCCanvas").GetComponent <CharacterCreationScript>();
                        CCScript.DeleteButtonClickedResponceHandler();
                    }
                    else if (type == "PlayersInScene")
                    {
                        Lisst = (List <PlayerInfo>)MyFormatter.Deserialize(NtwrkStrm);
                        SpawnPlayer(Lisst);
                    }
                    else if (type == "Player Joined Starting Area")
                    {
                        UnityEngine.Debug.Log("Player joined starting area");
                        Lisst.Add((PlayerInfo)MyFormatter.Deserialize(NtwrkStrm));
                        SpawnPlayer(Lisst);
                    }
                    else if (type == "LoadStartingArea")
                    {
                        PlayerClass.SelectedHero = (PlayerInfo.Hero)MyFormatter.Deserialize(NtwrkStrm);
                        LoadLevel();
                    }
                    else if (type == "Current Position")
                    {
                        //UnityEngine.Debug.Log("current Position recieved");
                        string name = (string)MyFormatter.Deserialize(NtwrkStrm); //Recieve
                        NtwrkStrm.Flush();
                        float xin = (float)MyFormatter.Deserialize(NtwrkStrm);    //Recieve
                        NtwrkStrm.Flush();
                        float yin = (float)MyFormatter.Deserialize(NtwrkStrm);    //Recieve
                        NtwrkStrm.Flush();
                        float zin = (float)MyFormatter.Deserialize(NtwrkStrm);    //Recieve
                        NtwrkStrm.Flush();
                        float yrot = (float)MyFormatter.Deserialize(NtwrkStrm);   //Recieve
                        NtwrkStrm.Flush();
                        if (LevelLoaded)
                        {
                            //UnityEngine.Debug.Log("lvlloaded = true");
                            if (ClientSpawned == true)
                            {
                                //UnityEngine.Debug.Log("player spawned = true");
                                GameObject unit = GameObject.Find(name);
                                unit.transform.SetPositionAndRotation(new Vector3(xin, yin, zin), Quaternion.Euler(0, yrot, 0));
                            }
                        }
                    }
                    else if (type == "Player Disconected")
                    {
                        PlayerInfo DCPlayer = (PlayerInfo)MyFormatter.Deserialize(NtwrkStrm);
                        foreach (KeyValuePair <PlayerInfo, GameObject> kvp in SpawnedPlayers)
                        {
                            if (kvp.Key.UserName == DCPlayer.UserName)
                            {
                                UnityEngine.Debug.Log("Removing Player " + kvp.Key.UserName + " from the game");
                                SpawnedPlayers.Remove(kvp.Key);
                                Destroy(kvp.Value);
                                Lisst.Remove(kvp.Key);
                            }
                        }
                    }
                    else
                    {
                        return;
                    }
                }
                catch (Exception e)
                {
                    UnityEngine.Debug.Log(e);
                    NtwrkStrm.Flush();
                    return;
                }
            }
            else
            {
                return;
            }
        }
        else
        {
            return;
        }
    }
 /// <summary>
 /// Start is called once on object creation
 /// </summary>
 protected override void Start()
 {
     instance = this;
     base.Start();
 }