Ejemplo n.º 1
0
        private void onServerObjectItemAdded(DataEntityHandle handle, ServerObjectItemData obj)
        {
            IslandTargetGroupMMOItem islandTargetGroupMMOItem = obj.Item as IslandTargetGroupMMOItem;

            if (islandTargetGroupMMOItem != null)
            {
                onIslandGroupMMOItemAdded(handle, obj, islandTargetGroupMMOItem);
                return;
            }
            IslandTargetMMOItem islandTargetMMOItem = obj.Item as IslandTargetMMOItem;

            if (islandTargetMMOItem != null)
            {
                onIslandTargetMMOItemAdded(handle, obj, islandTargetMMOItem);
                return;
            }
            IslandTargetPlaygroundStatsMMOItem islandTargetPlaygroundStatsMMOItem = obj.Item as IslandTargetPlaygroundStatsMMOItem;

            if (islandTargetPlaygroundStatsMMOItem != null)
            {
                onIslandTargetPlaygroundStatsMMOItemAdded(handle, obj, islandTargetPlaygroundStatsMMOItem);
            }
        }
Ejemplo n.º 2
0
 private void loadExistingWorldExperiences()
 {
     DataEntityHandle[] entitiesByType = dataEntityCollection.GetEntitiesByType <ServerObjectItemData>();
     foreach (DataEntityHandle handle in entitiesByType)
     {
         ServerObjectItemData component = dataEntityCollection.GetComponent <ServerObjectItemData>(handle);
         if (component.Item.Id.Parent != CPMMOItemId.CPMMOItemParent.WORLD)
         {
             continue;
         }
         CPMMOItem item = component.Item;
         if (item is ConsumableItem)
         {
             ConsumableItem   consumableItem = (ConsumableItem)item;
             PrefabContentKey propExperiencePathFromPropId = getPropExperiencePathFromPropId(consumableItem.Type);
             if (propExperiencePathFromPropId != null && !string.IsNullOrEmpty(propExperiencePathFromPropId.Key))
             {
                 ServerObjectPositionData component2 = dataEntityCollection.GetComponent <ServerObjectPositionData>(handle);
                 CoroutineRunner.Start(loadWorldExperience(consumableItem, component2.Position), this, "loadWorldExperience");
             }
         }
     }
 }
Ejemplo n.º 3
0
 private void onIslandTargetPlaygroundStatsMMOItemAdded(DataEntityHandle handle, ServerObjectItemData serverObjectItemData, IslandTargetPlaygroundStatsMMOItem item)
 {
     if (!dataModelHandleListenersMap.ContainsKey(handle) && item.GetPath() == base.transform.GetPath())
     {
         dataModelHandleListenersMap[handle] = serverObjectItemData;
         serverObjectItemData.ItemChanged   += onIslandTargetsPlaygroundStatsChanged;
         dispatcher.DispatchEvent(new IslandTargetsEvents.StatsUpdated(item.GetBestWinStreakToday(), item.GetCurrentWinStreakToday()));
     }
 }
Ejemplo n.º 4
0
 private bool OnItemDestroyed(WorldServiceEvents.ItemDestroyed evt)
 {
     dataEntityCollection.RemoveEntityByName(ServerObjectItemData.GetEntityName(evt.ItemId));
     return(false);
 }
Ejemplo n.º 5
0
            public ServerObjectTracker(PropService propService, DataEntityHandle handle, ServerObjectItemData serverObjectItemData)
            {
                this.serverObjectItemData = serverObjectItemData;
                this.propService          = propService;
                this.handle = handle;
                DataEntityCollection dataEntityCollection = Service.Get <CPDataEntityCollection>();

                if (dataEntityCollection.TryGetComponent <ServerObjectPositionData>(handle, out var component))
                {
                    spawnObject(component.Position);
                    return;
                }
                dataEntityCollection.EventDispatcher.AddListener <DataEntityEvents.ComponentAddedEvent <ServerObjectPositionData> >(onComponentAdded);
                dataEntityCollection.EventDispatcher.AddListener <DataEntityEvents.EntityRemovedEvent>(onItemRemoved);
            }