Example #1
0
        public void TryGiveRad(Fougerite.Player pl)
        {
            if (pl.IsOnline && !pl.IsDisconnecting && pl.IsAlive)
            {
                foreach (var key in ZonesDictionary)
                {
                    try
                    {
                        Vector3 loc   = Util.GetUtil().ConvertStringToVector3(key.Key);
                        int     range = Convert.ToInt32(key.Value);

                        var PlayerDist = Util.GetUtil().GetVectorsDistance(pl.Location, loc);

                        if (PlayerDist < range)
                        {
                            pl.AddRads(RadLevelHight);
                            pl.InventoryNotice(RadLevelHight + " Rads");
                        }
                        else
                        {
                            pl.AddRads(RadLevelLow);
                            pl.InventoryNotice(RadLevelLow + " Rads");
                        }
                    }
                    catch (Exception ex)
                    {
                        Debug.Log(Name + " Error B:" + ex.ToString());
                        continue;
                    }
                }
            }
        }
Example #2
0
        public void RadZoneBehaviour_AddRads(uint id)
        {
            if (SpawnManager.SpawnedObjects.TryGetValue(id, out var spawnableObjectBehaviour))
            {
                var radZoneBehaviour = spawnableObjectBehaviour.GetComponent <RadZoneBehaviour>();

                var rads           = radZoneBehaviour.Rads;
                var amountToReduce = 0f;

                foreach (var armorItem in FougeritePlayer.Inventory.ArmorItems)
                {
                    if (armorItem.Name == "Rad Suit Vest")
                    {
                        amountToReduce += rads * 0.30f;
                    }
                    else if (armorItem.Name == "Rad Suit Pants")
                    {
                        amountToReduce += rads * 0.20f;
                    }
                    else if (armorItem.Name == "Rad Suit Helmet")
                    {
                        amountToReduce += rads * 0.15f;
                    }
                    else if (armorItem.Name == "Rad Suit Boots")
                    {
                        amountToReduce += rads * 0.1f;
                    }
                }
                FougeritePlayer.AddRads(radZoneBehaviour.Rads - amountToReduce);
            }
        }