Пример #1
0
        private void GenerateNebulaElements(string template, int count, ConcurrentDictionary <string, ServerInventoryItem> newObjects)
        {
            if (string.IsNullOrEmpty(template))
            {
                template = resource.PassiveBonuses.allData[Rand.Int(0, resource.PassiveBonuses.allData.Length - 1)].elementID;
            }
            NebulaElementObject obj = new NebulaElementObject(template, template);

            newObjects.TryAdd(obj.Id, new ServerInventoryItem(obj, count));
        }
Пример #2
0
        private ServerInventoryItem GiveNebulaElement(MmoActor player, ContractNebulaElementDataReward reward)
        {
            if (reward == null)
            {
                return(null);
            }

            var    randomPassiveBonus = player.resource.PassiveBonuses.allData.ToList().AnyElement();
            string nebulaElementId    = randomPassiveBonus.elementID;
            NebulaElementObject nebulaElementObject = new NebulaElementObject(nebulaElementId, nebulaElementId);

            return(new ServerInventoryItem(nebulaElementObject, reward.count));
        }
Пример #3
0
        public void OnWasKilled()
        {
            s_Log.InfoFormat("MiningStation.OnWasKilled() call with = {0} damagers".Color(LogColor.orange), m_damagers.Count);
            if (currentCount > 0 && m_damagers.Count > 0)
            {
                NebulaElementObject        nebObject           = new NebulaElementObject(nebulaElementID, nebulaElementID);
                ServerInventoryItem        serverInventoryItem = new ServerInventoryItem(nebObject, currentCount);
                List <ServerInventoryItem> itemsPerDamager     = new List <ServerInventoryItem> {
                    serverInventoryItem
                };

                var chest = ObjectCreate.Chest(nebulaObject.world as MmoWorld, transform.position, 4 * 60,
                                               m_damagers, itemsPerDamager);
                chest.AddToWorld();
            }
        }