示例#1
0
        public SkillsManager(ILogger <SkillsManager> logger, IGameDefinitionsPreloder definitionsPreloder, IDatabase database, IHealthManager healthManager, IAttackManager attackManager, IBuffsManager buffsManager, IStatsManager statsManager, IElementProvider elementProvider, ICountryProvider countryProvider, ICharacterConfiguration characterConfig, ILevelProvider levelProvider, IAdditionalInfoManager additionalInfoManager, IMapProvider mapProvider, ITeleportationManager teleportationManager, IMovementManager movementManager, IShapeManager shapeManager, IPartyManager partyManager, IGamePacketFactory packetFactory)
        {
            _logger = logger;
            _definitionsPreloder      = definitionsPreloder;
            _database                 = database;
            _healthManager            = healthManager;
            _attackManager            = attackManager;
            _buffsManager             = buffsManager;
            _statsManager             = statsManager;
            _elementProvider          = elementProvider;
            _countryProvider          = countryProvider;
            _characterConfig          = characterConfig;
            _levelProvider            = levelProvider;
            _additionalInfoManager    = additionalInfoManager;
            _mapProvider              = mapProvider;
            _teleportationManager     = teleportationManager;
            _movementManager          = movementManager;
            _shapeManager             = shapeManager;
            _partyManager             = partyManager;
            _packetFactory            = packetFactory;
            _levelProvider.OnLevelUp += OnLevelUp;

#if DEBUG
            _logger.LogDebug("SkillsManager {hashcode} created", GetHashCode());
#endif
        }
示例#2
0
        public static int GetLevel(this DeckInfo info, ILevelProvider weaponLevelProvider)
        {
            int level = 0;

            weaponLevelProvider.TryGetLevel(info.Weapon, out level);
            return(Math.Max(1, level));
        }
示例#3
0
 internal BaseLevelTree(ITableScheme scheme, LevelTreeDefinition levelDef,
                        IDbDataSource source, ILevelProvider provider)
 {
     fSelector   = new LevelSelector(scheme, levelDef, source);
     fProvider   = provider;
     fDefinition = levelDef;
 }
示例#4
0
        void createLevelWidget(ILevelProvider level, int levelIndex)
        {
            var instance    = InstantiateUtil.InstantiateUIAt(levelItemPrefab, levelList);
            var levelWidget = instance.GetComponent <LevelItemWidget>();

            levelWidget.SetData(level, levelIndex);
            levelWidget.onSelect.AddListener(onItemSelect.Dispatch);
        }
示例#5
0
        public override void OnEnabled()
        {
            level = new Level
            {
                Name = "Default Level"
            };

            levelProvider = new LevelProvider(level);
        }
示例#6
0
        private void Convert()
        {
            string levelPath              = this.LoadDirectory.Text;
            string savePath               = Path.Combine(this.SaveDirectory.Text, this.GetWorldName());
            LevelProviderManager manager  = new LevelProviderManager();
            ILevelProvider       provider = manager.GetProvider(levelPath);

            provider.Convert(levelPath, savePath, this.GetDimensionId());
            this.CheckFinish();
        }
示例#7
0
        public RegionLoader(ILevelProvider provider, string path)
        {
            this.Provider = provider;
            this.FilePath = path;

            string fileName = Path.GetFileName(path);

            string[] xz = fileName.Split('.');
            this.X = int.Parse(xz[1]);
            this.Z = int.Parse(xz[2]);
        }
示例#8
0
        private int m_difficulty;                            // The current difficulty of the level
        public SokobanGameTemplate()
        {
            // Storing the services
            m_stateMachine  = DependencyContainer.Instance.Resolve <IWorkerStateMachine>();
            m_levelProvider = Dependency.DependencyContainer.Instance.Resolve <ILevelProvider>();
            var ioFactory = DependencyContainer.Instance.Resolve <IOutputInputFactory>();    // Getting the factory

            m_boardDisplayer   = ioFactory.CreateDisplayer();
            m_movemnetListener = ioFactory.CreateMovementListener();
            m_levelTemplate    = new SokobanLevelTemplate(); // Creating the level template

            m_movemnetListener.Attach(this);                 // Adding the current template as an observer to the input
        }
示例#9
0
 public SurvivalGameModeBehaviour(
     IViewProvider <IInvaderView> invaderViewProvider,
     IGameNotifications gameNotifications,
     IGameStateProvider gameStateProvider,
     ILevelProvider levelProvider,
     IInvaderConfigurationProvider invaderConfigurationProvider)
 {
     _invaderViewProvider          = invaderViewProvider;
     _gameNotifications            = gameNotifications;
     _gameStateProvider            = gameStateProvider;
     _levelProvider                = levelProvider;
     _invaderConfigurationProvider = invaderConfigurationProvider;
 }
示例#10
0
 public BaseKillable(IDatabasePreloader databasePreloader, ICountryProvider countryProvider, IStatsManager statsManager, IHealthManager healthManager, ILevelProvider levelProvider, IBuffsManager buffsManager, IElementProvider elementProvider, IMovementManager movementManager, IUntouchableManager untouchableManager, IMapProvider mapProvider)
 {
     _databasePreloader = databasePreloader;
     CountryProvider    = countryProvider;
     StatsManager       = statsManager;
     HealthManager      = healthManager;
     LevelProvider      = levelProvider;
     BuffsManager       = buffsManager;
     ElementProvider    = elementProvider;
     MovementManager    = movementManager;
     UntouchableManager = untouchableManager;
     MapProvider        = mapProvider;
 }
示例#11
0
        public StatsManager(ILogger <StatsManager> logger, IDatabase database, ILevelProvider levelProvider, IAdditionalInfoManager additionalInfoManager, ICharacterConfiguration charactedConfig)
        {
            _logger                = logger;
            _database              = database;
            _levelProvider         = levelProvider;
            _additionalInfoManager = additionalInfoManager;
            _characterConfig       = charactedConfig;

            _levelProvider.OnLevelUp += OnLevelUp;

#if DEBUG
            _logger.LogDebug("StatsManager {hashcode} created", GetHashCode());
#endif
        }
示例#12
0
        public Mob(ushort mobId,
                   bool shouldRebirth,
                   MoveArea moveArea,
                   ILogger <Mob> logger,
                   IDatabasePreloader databasePreloader,
                   IAIManager aiManager,
                   IItemEnchantConfiguration enchantConfig,
                   IItemCreateConfiguration itemCreateConfig,
                   ICountryProvider countryProvider,
                   IStatsManager statsManager,
                   IHealthManager healthManager,
                   ILevelProvider levelProvider,
                   ISpeedManager speedManager,
                   IAttackManager attackManager,
                   ISkillsManager skillsManager,
                   IBuffsManager buffsManager,
                   IElementProvider elementProvider,
                   IMovementManager movementManager,
                   IUntouchableManager untouchableManager,
                   IMapProvider mapProvider) : base(databasePreloader, countryProvider, statsManager, healthManager, levelProvider, buffsManager, elementProvider, movementManager, untouchableManager, mapProvider)
        {
            _logger           = logger;
            _enchantConfig    = enchantConfig;
            _itemCreateConfig = itemCreateConfig;
            _dbMob            = databasePreloader.Mobs[mobId];
            _moveArea         = moveArea;

            AIManager = aiManager;

            Exp           = _dbMob.Exp;
            ShouldRebirth = shouldRebirth;

            SpeedManager  = speedManager;
            AttackManager = attackManager;
            SkillsManager = skillsManager;

            ElementProvider.ConstAttackElement  = _dbMob.Element;
            ElementProvider.ConstDefenceElement = _dbMob.Element;

            if (ShouldRebirth)
            {
                _rebirthTimer.Interval = RespawnTimeInMilliseconds;
                _rebirthTimer.Elapsed += RebirthTimer_Elapsed;

                HealthManager.OnDead += MobRebirth_OnDead;
            }

            HealthManager.OnGotDamage += OnDecreaseHP;
            AIManager.OnStateChanged  += AIManager_OnStateChanged;
        }
示例#13
0
 public LevelSetup(IViewProvider <IInvaderView> invaderViewProvider,
                   IViewProvider <IMissileView> missileViewProvider,
                   IViewProvider <IExplosionView> explosionsViewProvider,
                   ILevelProvider levelProvider,
                   IInvaderConfigurationProvider invaderConfigurationProvider,
                   IGameStateProvider gameStateProvider)
 {
     _levelProvider = levelProvider;
     _invaderConfigurationProvider = invaderConfigurationProvider;
     _gameStateProvider            = gameStateProvider;
     _invaderViewProvider          = invaderViewProvider;
     _missileViewProvider          = missileViewProvider;
     _explosionsViewProvider       = explosionsViewProvider;
 }
示例#14
0
        public AttackManager(ILogger <AttackManager> logger, IStatsManager statsManager, ILevelProvider levelProvider, IElementProvider elementManager, ICountryProvider countryProvider, ISpeedManager speedManager, IStealthManager stealthManager, IHealthManager healthManager, IShapeManager shapeManager)
        {
            _logger          = logger;
            _statsManager    = statsManager;
            _levelProvider   = levelProvider;
            _elementManager  = elementManager;
            _countryProvider = countryProvider;
            _speedManager    = speedManager;
            _stealthManager  = stealthManager;
            _healthManager   = healthManager;
            _shapeManager    = shapeManager;

#if DEBUG
            _logger.LogDebug("AttackManager {hashcode} created", GetHashCode());
#endif
        }
示例#15
0
        public LevelingManager(ILogger <LevelingManager> logger, IDatabase database, ILevelProvider levelProvider, IAdditionalInfoManager additionalInfoManager, ICharacterConfiguration charConfig, IDatabasePreloader databasePreloader, IPartyManager partyManager, IMapProvider mapProvider, IMovementManager movementManager)
        {
            _logger                = logger;
            _database              = database;
            _levelProvider         = levelProvider;
            _additionalInfoManager = additionalInfoManager;
            _characterConfig       = charConfig;
            _databasePreloader     = databasePreloader;
            _partyManager          = partyManager;
            _mapProvider           = mapProvider;
            _movementManager       = movementManager;

#if DEBUG
            _logger.LogDebug("LevelingManager {hashcode} created", GetHashCode());
#endif
        }
示例#16
0
        public HealthManager(ILogger <HealthManager> logger, IStatsManager statsManager, ILevelProvider levelProvider, ICharacterConfiguration characterConfiguration, IDatabase database)
        {
            _logger                 = logger;
            _statsManager           = statsManager;
            _levelProvider          = levelProvider;
            _characterConfiguration = characterConfiguration;
            _database               = database;

            _statsManager.OnRecUpdate += StatsManager_OnRecUpdate;
            _statsManager.OnDexUpdate += StatsManager_OnDexUpdate;
            _statsManager.OnWisUpdate += StatsManager_OnWisUpdate;
            _levelProvider.OnLevelUp  += OnLevelUp;

#if DEBUG
            _logger.LogDebug("HealthManager {hashcode} created", GetHashCode());
#endif
        }
        public TeleportationManager(ILogger <TeleportationManager> logger, IMovementManager movementManager, IMapProvider mapProvider, IDatabase database, ICountryProvider countryProvider, ILevelProvider levelProvider, IGameWorld gameWorld, IHealthManager healthManager)
        {
            _logger                     = logger;
            _movementManager            = movementManager;
            _mapProvider                = mapProvider;
            _database                   = database;
            _countryProvider            = countryProvider;
            _levelProvider              = levelProvider;
            _gameWorld                  = gameWorld;
            _healthManager              = healthManager;
            _castingTimer.Elapsed      += OnCastingTimer_Elapsed;
            _healthManager.OnGotDamage += HealthManager_OnGotDamage;
            _movementManager.OnMove    += MovementManager_OnMove;
#if DEBUG
            _logger.LogDebug("TeleportationManager {hashcode} created", GetHashCode());
#endif

            SavedPositions = new ReadOnlyDictionary <byte, (ushort MapId, float X, float Y, float Z)>(_savedPositions);
        }
示例#18
0
        public LevelDataRowTreeNode(ITree tree, DataRow row,
                                    LevelTreeDefinition treeDef, ILevelProvider provider)
            : base(tree, row)
        {
            Id   = row[treeDef.IdField].ToString();
            Name = row[treeDef.NameField].ToString();
            int level = provider.GetLevel(treeDef, Id);

            ParentId = provider.GetParentId(treeDef, level, Id);
            if (level < treeDef.TotalLevel - 1)
            {
                HasChild = true;
                NodeType = level == 0 ? TreeNodeType.Root : TreeNodeType.Branch;
            }
            else
            {
                NodeType = TreeNodeType.Leaf;
            }
        }
示例#19
0
文件: Level.cs 项目: gmich/Snake
        public Level(ILevelProvider levelProvider, Action next, Action restart)
        {
            this.levelProvider = levelProvider;
            grid = levelProvider.Grid;
            levelSettings = levelProvider.LevelSettings;
            adjustmentRules = AdjustmentRules.Default(levelProvider.LevelSettings.HorizontalTileCount - 1,
                                                           levelProvider.LevelSettings.VerticalTileCount - 1);

            context = new LevelContext(levelProvider.Head,
                                       levelProvider.LevelSettings,
                                       levelProvider.TailSpawner,
                                       Direction.Left,
                                       restart,
                                       next,
                                       location =>
                                       {
                                           bool intersects = grid[(int)location.X, (int)location.Y].Collide();
                                           elements.ForEach(element => intersects|= element.Intersects(location));
                                           return intersects;
                                       },
                                       levelProvider.LevelSettings.MaxLives);
            elements.Add(levelProvider.Head);
        }
示例#20
0
 public ClassicLevelSearch(LevelTreeDefinition treeDef, ILevelProvider levelProvider)
 {
     fLevelProvider = levelProvider;
     fTreeDef       = treeDef;
 }
示例#21
0
 public CharacterFactory(ILogger <ICharacterFactory> logger,
                         IDatabase database,
                         ILogger <Character> characterLogger,
                         IGameWorld gameWorld,
                         IDatabasePreloader databasePreloader,
                         IGameDefinitionsPreloder definitionsPreloder,
                         ICountryProvider countryProvider,
                         ISpeedManager speedManager,
                         IStatsManager statsManager,
                         IHealthManager healthManager,
                         ILevelProvider levelProvider,
                         ILevelingManager levelingManager,
                         IInventoryManager inventoryManager,
                         ILinkingManager linkingManager,
                         IGuildManager guildManager,
                         IGameSession gameSession,
                         IStealthManager stealthManager,
                         IAttackManager attackManager,
                         ISkillsManager skillsManager,
                         IBuffsManager buffsManager,
                         IElementProvider elementProvider,
                         IKillsManager killsManager,
                         IVehicleManager vehicleManager,
                         IShapeManager shapeManager,
                         IMovementManager movementManager,
                         IAdditionalInfoManager additionalInfoManager,
                         IMapProvider mapProvider,
                         ITeleportationManager teleportationManager,
                         IPartyManager partyManager,
                         ITradeManager tradeManager,
                         IFriendsManager friendsManager,
                         IDuelManager duelManager,
                         IBankManager bankManager,
                         IQuestsManager questsManager,
                         IUntouchableManager untouchableManager,
                         IWarehouseManager warehouseManager,
                         IShopManager shopManager,
                         ISkillCastingManager skillCastingManager,
                         ICastProtectionManager castProtectionManager,
                         IGamePacketFactory packetFactory,
                         UserManager <DbUser> userManager)
 {
     _logger                = logger;
     _database              = database;
     _characterLogger       = characterLogger;
     _gameWorld             = gameWorld;
     _databasePreloader     = databasePreloader;
     _definitionsPreloder   = definitionsPreloder;
     _countryProvider       = countryProvider;
     _speedManager          = speedManager;
     _statsManager          = statsManager;
     _healthManager         = healthManager;
     _levelProvider         = levelProvider;
     _levelingManager       = levelingManager;
     _inventoryManager      = inventoryManager;
     _linkingManager        = linkingManager;
     _guildManager          = guildManager;
     _gameSession           = gameSession;
     _stealthManager        = stealthManager;
     _attackManager         = attackManager;
     _skillsManager         = skillsManager;
     _buffsManager          = buffsManager;
     _elementProvider       = elementProvider;
     _killsManager          = killsManager;
     _vehicleManager        = vehicleManager;
     _shapeManager          = shapeManager;
     _movementManager       = movementManager;
     _additionalInfoManager = additionalInfoManager;
     _mapProvider           = mapProvider;
     _teleportationManager  = teleportationManager;
     _partyManager          = partyManager;
     _tradeManager          = tradeManager;
     _friendsManager        = friendsManager;
     _duelManager           = duelManager;
     _bankManager           = bankManager;
     _questsManager         = questsManager;
     _untouchableManager    = untouchableManager;
     _warehouseManager      = warehouseManager;
     _shopManager           = shopManager;
     _skillCastingManager   = skillCastingManager;
     _castProtectionManager = castProtectionManager;
     _packetFactory         = packetFactory;
     _userManager           = userManager;
 }
示例#22
0
 public LevelManager(ILevelProvider levelProvider)
 {
     _levelProvider = levelProvider;
 }
示例#23
0
        public Character(ILogger <Character> logger,
                         IDatabasePreloader databasePreloader,
                         IGuildManager guildManager,
                         ICountryProvider countryProvider,
                         ISpeedManager speedManager,
                         IStatsManager statsManager,
                         IAdditionalInfoManager additionalInfoManager,
                         IHealthManager healthManager,
                         ILevelProvider levelProvider,
                         ILevelingManager levelingManager,
                         IInventoryManager inventoryManager,
                         IStealthManager stealthManager,
                         IAttackManager attackManager,
                         ISkillsManager skillsManager,
                         IBuffsManager buffsManager,
                         IElementProvider elementProvider,
                         IKillsManager killsManager,
                         IVehicleManager vehicleManager,
                         IShapeManager shapeManager,
                         IMovementManager movementManager,
                         ILinkingManager linkinManager,
                         IMapProvider mapProvider,
                         ITeleportationManager teleportationManager,
                         IPartyManager partyManager,
                         ITradeManager tradeManager,
                         IFriendsManager friendsManager,
                         IDuelManager duelManager,
                         IBankManager bankManager,
                         IQuestsManager questsManager,
                         IUntouchableManager untouchableManager,
                         IWarehouseManager warehouseManager,
                         IShopManager shopManager,
                         ISkillCastingManager skillCastingManager,
                         ICastProtectionManager castProtectionManager,
                         IGameSession gameSession,
                         IGamePacketFactory packetFactory) : base(databasePreloader, countryProvider, statsManager, healthManager, levelProvider, buffsManager, elementProvider, movementManager, untouchableManager, mapProvider)
        {
            _logger        = logger;
            _packetFactory = packetFactory;

            AdditionalInfoManager = additionalInfoManager;
            InventoryManager      = inventoryManager;
            StealthManager        = stealthManager;
            LevelingManager       = levelingManager;
            SpeedManager          = speedManager;
            AttackManager         = attackManager;
            SkillsManager         = skillsManager;
            KillsManager          = killsManager;
            VehicleManager        = vehicleManager;
            ShapeManager          = shapeManager;
            LinkingManager        = linkinManager;
            TeleportationManager  = teleportationManager;
            PartyManager          = partyManager;
            TradeManager          = tradeManager;
            FriendsManager        = friendsManager;
            DuelManager           = duelManager;
            GuildManager          = guildManager;
            BankManager           = bankManager;
            QuestsManager         = questsManager;
            WarehouseManager      = warehouseManager;
            ShopManager           = shopManager;
            SkillCastingManager   = skillCastingManager;
            CastProtectionManager = castProtectionManager;
            GameSession           = gameSession;

            HealthManager.MP_SP_Used += SendUseMPSP;
            HealthManager.OnCurrentHitpointsChanged += SendCurrentHitpoints;
            StatsManager.OnAdditionalStatsUpdate    += SendAdditionalStats;
            StatsManager.OnResetStats         += SendResetStats;
            BuffsManager.OnBuffAdded          += SendAddBuff;
            BuffsManager.OnBuffRemoved        += SendRemoveBuff;
            AttackManager.OnStartAttack       += SendAttackStart;
            VehicleManager.OnUsedVehicle      += SendUseVehicle;
            SkillsManager.OnResetSkills       += SendResetSkills;
            InventoryManager.OnAddItem        += SendAddItemToInventory;
            InventoryManager.OnRemoveItem     += SendRemoveItemFromInventory;
            InventoryManager.OnItemExpired    += SendItemExpired;
            AttackManager.TargetOnBuffAdded   += SendTargetAddBuff;
            AttackManager.TargetOnBuffRemoved += SendTargetRemoveBuff;
            DuelManager.OnDuelResponse        += SendDuelResponse;
            DuelManager.OnStart                   += SendDuelStart;
            DuelManager.OnCanceled                += SendDuelCancel;
            DuelManager.OnFinish                  += SendDuelFinish;
            LevelingManager.OnExpChanged          += SendExperienceGain;
            QuestsManager.OnQuestMobCountChanged  += SendQuestCountUpdate;
            QuestsManager.OnQuestFinished         += SendQuestFinished;
            ShopManager.OnUseShopClosed           += SendUseShopClosed;
            ShopManager.OnUseShopItemCountChanged += SendUseShopItemCountChanged;
            ShopManager.OnSoldItem                += SendSoldItem;

            Bless.Instance.OnDarkBlessChanged  += OnDarkBlessChanged;
            Bless.Instance.OnLightBlessChanged += OnLightBlessChanged;
        }
示例#24
0
 public void Init()
 {
     _levelProvider   = Resources.Load <LevelProvider>("GameData/Levels/LevelList");
     _levelController = new LoadLevelController(_levelProvider);
 }
示例#25
0
 public void SetData(ILevelProvider level, int levelIndex)
 {
     nameLabel.text  = level.Name;
     movesLabel.text = string.Format("Moves: {0}", level.Moves);
     this.levelIndex = levelIndex;
 }
示例#26
0
 public LevelProviderProxy()
 {
     originalProvider        = new LevelProvider();        // Creating the Original Level Provider
     bestDifficultyRequested = 0;                          // No diffculty is requested yet
     m_cache = new Dictionary <int, ComponentsEnum[, ]>(); // Creating a cache to not overload the server
 }
示例#27
0
 public LoadLevelController(ILevelProvider levelProvider)
 {
     _levelProvider = levelProvider;
 }
示例#28
0
 public QuizzFactory(ILevelProvider levelProvider)
 {
     _levelProvider = levelProvider;
 }
示例#29
0
文件: SnakeClone.cs 项目: gmich/Snake
 private void NewLevel(ILevelProvider provider)
 {
     level = new Level(provider, NextLevel, Restart);
     configureLevelSize(LevelSize);
 }
示例#30
0
        internal static IParamBuilder GetLevelBuilder(TableSelector selector,
                                                      LevelTreeDefinition treeDef, int level, string value, ILevelProvider provider)
        {
            IParamBuilder[] builders = new IParamBuilder[level + 1];
            IFieldInfo      idField  = selector.GetFieldInfo(treeDef.IdField);

            for (int i = 0; i <= level; ++i)
            {
                string likeValue = provider.GetSqlLikeValue(treeDef, i, value);
                builders[i] = SqlParamBuilder.CreateSingleSql(selector.Context, idField, "LIKE",
                                                              treeDef.IdField + i, likeValue);
            }
            IParamBuilder builder = SqlParamBuilder.CreateParamBuilderWithOr(builders);

            return(builder);
        }