예제 #1
0
        public TownState(CombatSystem cSys, EntityMaintenanceSystem entSys, EntityManager eMan, NameSystem nSys, StateMachine sM, PlayerSystem pS, GameMap gMap)
        {
            entMaintenanceSystem = entSys;
            stateSystem = sM;
            playerSystem = pS;
            gameMap = gMap;

            saveControl = new SaveCharacterControl(cSys, entSys, eMan, nSys);
        }
예제 #2
0
 public NewCharacterState(CombatSystem cSys, EntityMaintenanceSystem eSys, EntityManager eMan, StateMachine sMach, PlayerSystem pSys, AISystem aiSys)
 {
     combatSystem = cSys;
     entMaintenanceSystem = eSys;
     playerSystem = pSys;
     entityManager = eMan;
     stateSystem = sMach;
     aiSystem = aiSys;
 }
예제 #3
0
        public ChatServer()
        {
            AddSystem(this, 1);

            _playerSystem = new PlayerSystem<PlayerObject>();
            AddEntitySystem(_playerSystem);

            PacketFactory.AddCallback<ChatPacket>(OnChatMessage);
            PacketFactory.AddCallback<ChatLoginPacket>(OnLogin);
        }
예제 #4
0
        public StatusState(StatsSystem sS, ExperienceSystem eS, StateMachine sM, NameSystem nS, PlayerSystem pS, ProfessionSystem profS)
        {
            statsSystem = sS;
            experienceSystem = eS;
            nameSystem = nS;
            playerSystem = pS;
            professionSystem = profS;

            stateSystem = sM;
        }
예제 #5
0
	private void OnEnable(){
		if (PlayerSystem.current != null)
		{
			Debug.LogWarning("Multiple PlayerSystems in scene... this is not supported");
		}
		else
		{
			PlayerSystem.current = this;
		}
	}
예제 #6
0
        public void Set(SpiritData spiritData, PlayerSystem owner, Vector2 position, int index)
        {
            transform.GetChild(0).GetComponent <Image>().sprite = spiritData.Image;

            owner      = Owner;
            SpiritData = spiritData;

            GetComponent <RectTransform>().localPosition = position * index;

            Count = 1;
        }
예제 #7
0
    private void Awake()
    {
        PlayerController.Shooting += DecNumberOfBullet;

        if (instance != null)
        {
            Debug.LogError("Существует еще один PlayerSystem");
            return;
        }
        instance = this;
    }
예제 #8
0
        protected override void Draw(GameTime gameTime)
        {
            GraphicsDevice.Clear(Color.CornflowerBlue);

            Globals.SpriteBatch.Begin(SpriteSortMode.Deferred, BlendState.AlphaBlend, SamplerState.PointClamp, DepthStencilState.Default, RasterizerState.CullNone);;
            FloorSystem.Draw();
            PlayerSystem.Draw();

            Globals.SpriteBatch.End();

            base.Draw(gameTime);
        }
예제 #9
0
        public object Read(NodeEntry node, BinaryReader reader, List <INodeParser> parsers)
        {
            var result = new PlayerSystem();

            reader.Skip(4); // Skip Id
            result.Unk_Hash = reader.ReadUInt64();
            result.Unk_Id   = reader.ReadTweakDbId();

            result.Node = node;

            return(result);
        }
예제 #10
0
    private void Awake()
    {
        myPlayerSystem = GameObject.Find("PlayerSystem").GetComponent <PlayerSystem>();
        myMeshRenderer = GetComponent <MeshRenderer>();
        myBoxCollider  = GetComponent <BoxCollider>();
        myAudioSource  = GetComponent <AudioSource>();

        int index = Random.Range(0, laserSounds.Length);

        myAudioSource.clip = laserSounds[index];
        myAudioSource.Play();
    }
예제 #11
0
        public void SetSystem(PlayerSystem player)
        {
            Owner           = player;
            GetSpiritButton = Instantiate(GetSpiritButton.gameObject, Owner.WorldCanvas.transform).GetComponent <Button>();
            Owner.ResourceSystem.ResourcesChanged += OnResourcesChanged;
            GetSpiritButton.onClick.AddListener(OnGetSpiritClick);

            UpdateUI();

            void OnResourcesChanged() => UpdateUI();
            void OnGetSpiritClick() => Owner.SpiritCreatingSystem.CreateRandomSpirit();
        }
예제 #12
0
    void Start()
    {
        _animator       = GetComponent <Animator>();
        _charController = GetComponent <CharacterController>();
        _audioSource    = GetComponent <AudioSource>();

        _playerSystem = GetComponent <PlayerSystem>();
        _playerInput  = GetComponent <PlayerInput>();


        InitializePlayer();
    }
예제 #13
0
    public void NextTurn(int playerIdx, int damage)
    {
        if (damage != 0)
        {
            PlayerSystem.GetInstance().PlayerAddCardWithDeck(DeckTag.DRAW_DECK, playerIdx, damage);
            EndAttackTurn();
        }

        TurnSystem.GetInstance().NextTurn();

        PlayerSystem.GetInstance().Players[playerIdx].IsPutCard = false;
    }
예제 #14
0
    public void TurnEndBtnPress()
    {
        var nowId = TurnSystem.GetInstance().PlayerNowTurn.Value;

        if (nowId == PlayerSystem.GetInstance().MyPlayerId)
        {
            Button btn = TurnEndBtnObject.GetComponent <Button>();
            btn.interactable = false;

            TurnSystem.GetInstance().EndTurn();
        }
    }
예제 #15
0
        public PlayerScoringSystem([InjectOptional] List <IPlayerScoringExtension> scoringExtensions,
                                   IMatcherProvider matcherProvider,
                                   PlayerSystem playerSystem,
                                   EventSystem eventSystem)
        {
            _scoringExtensions  = scoringExtensions;
            _playerMatcherGroup = matcherProvider.CreateMatcherGroup <Components.EntityTypes.Player, Score>();
            _playerSystem       = playerSystem;
            _eventSystem        = eventSystem;

            _endGameSubscription = eventSystem.Subscribe <EndGameEvent>(OnEndGameEvent);
        }
        public void AddPlayer_SuccessfullyAdded()
        {
            // Create player and system.
            Player       playerOne = CreatePlayer("Test_3_Player_1");
            PlayerSystem system    = CreateSystem();

            system.Add(playerOne);

            // Ensure it was sucesffully added to the system.
            Assert.AreEqual(system.Get("Test_3_Player_1"), playerOne, "Single component not correctly inserted into the system.");
            Assert.AreEqual(system.Count(), 1, "Single component not correctly inserted into the system.");
        }
예제 #17
0
        public CombatState(Lua Lua, EffectSystem eSys, NameSystem nSys, PlayerSystem pSys, EntityManager eMan,CombatSystem cSys,GameMap gMap, StateMachine sMach)
        {
            lua = Lua;
            effectSystem = eSys;
            combatSystem = cSys;
            nameSystem = nSys;
            playerSystem = pSys;
            entityManager = eMan;
            gameMap = gMap;
            stateSystem = sMach;

            RegisterLuaFunctions();
        }
예제 #18
0
        private void playerSystemUpdateHook(On.PlayerSystem.orig_Update orig, PlayerSystem self)
        {
            orig(self);

            if (!inited)
            {
                if (ItemManager.Instance.IsAllItemSynced)
                {
                    inited = true;
                    ris.ReInitaliseRandomisedItems(currentCharSave, ItemManager.Instance);
                }
            }
        }
        public void Player_DirectionIsCapped()
        {
            // Create player and system.
            Player       player = CreatePlayer("Test_2_Player_1");
            PlayerSystem system = CreateSystem();

            system.Add(player);

            // Set direction and check it's successfully capped.
            player.Direction = 5;
            system.Update(0.5f);
            Assert.AreEqual(player.Direction, 2, 0.001, "Player direction upper bound not corrected to 2.");
        }
예제 #20
0
    void ItemSwap()
    {
        Item.NumberCallback.Remove(this);
        if (TargetSlot.Item != null)
        {
            TargetSlot.Item.NumberCallback.Remove(TargetSlot);
        }

        PlayerSystem ps = TargetSlot.Item;

        TargetSlot.Item = Item;
        Item            = ps;
    }
예제 #21
0
    private void Start()
    {
        if (Instance != null && Instance != this)
        {
            Destroy(gameObject);
        }
        else
        {
            Instance = this;
        }

        TimesXButtonText();
        CountMoney();
    }
예제 #22
0
        public Game(Windows.UI.Xaml.Window current)
        {
            _colliderSystem            = new ColliderSystem(_eventSystem);
            _moveSystem                = new MoveSystem();
            _physicsSystem             = new PhysicsSystem(_eventSystem);
            _inputSystem               = new InputSystem(_eventSystem);
            _graphicsSystem            = new GraphicsSystem(_eventSystem);
            _particleSystem            = new ParticleSystem();
            _playerSystem              = new PlayerSystem(_eventSystem);
            _dustParticleEmitterSystem = new DustParticleEmitterSystem(_eventSystem, _dustEntityFactory);
            _particleEmitterSystem     = new ParticleEmitterSystem(_dustEntityFactory);

            _inputSystem.Current = current;
        }
예제 #23
0
        /// <summary>
        /// Set up the main Player entity.
        /// </summary>
        private void CreatePlayer()
        {
            // Get Player and Collider systems.
            PlayerSystem   playerSystem   = GetSystem <PlayerSystem>();
            ColliderSystem colliderSystem = GetSystem <ColliderSystem>();

            // Create Player Entity and Components.
            GameEntity entity   = new GameEntity("Player", new Vector2(300, 680), "Player");
            Player     player   = new Player(entity);
            Collider   collider = new Collider(entity, 256, 32, true);

            // Add them to the systems.
            playerSystem.Add(player);
            colliderSystem.Add(collider);
        }
예제 #24
0
파일: GameServer.cs 프로젝트: enBask/Asgard
        public GameServer(MonoServer renderServer)
        {
            _monoServer = renderServer;
            _bifrost = LookupSystem<BifrostServer>();
            _playerSys = LookupSystem<PlayerSystem>();

            PacketFactory.AddCallback<MonoLoginPacket>(OnLogin);

            _bifrost.OnDisconnect += _bifrost_OnDisconnect;

            JavascriptSystem jsSystem = new JavascriptSystem();
            AddSystem(jsSystem);

            jsSystem.Execute(@"test.js");
        }
예제 #25
0
    // Start is called before the first frame update
    void Start()
    {
        if (Instance != null && Instance != this)
        {
            Destroy(gameObject);
        }
        else
        {
            Instance = this;
        }

        itemdatabase = ItemDatabase.Instance;
        inventory    = InventoryController.Instance;
        playersystem = PlayerSystem.Instance;
    }
 public EntityMaintenanceSystem(EffectSystem eSys, EntityManager eMan, EquipmentSystem eqSys, ExperienceSystem xSys, GearSystem gSys, ItemInventorySystem invSys, ItemSystem iSys, NameSystem nSys, PlayerSystem pSys, ProfessionSystem profSys, StatsSystem sSys, StatModifierSystem smSys)
 {
     effectSystem = eSys;
     entityManager = eMan;
     equipmentSystem = eqSys;
     experienceSystem = xSys;
     gearSystem = gSys;
     inventorySystem=invSys;
     itemSystem = iSys;
     nameSystem = nSys;
     playerSystem = pSys;
     professionSystem = profSys;
     statsSystem = sSys;
     modifierSystem = smSys;
 }
예제 #27
0
    /// <summary>플레이어 카드가 0장이 되었을 때 체크 </summary>
    /// <returns>0장이라면 true 아니라면 false</returns>
    public bool CheckWinPlayer()
    {
        var nowTurn = TurnSystem.GetInstance().GetNowTurnPlayerIndex();
        var count   = PlayerSystem.GetInstance().GetPlayerCardCount(nowTurn);
        var id      = PlayerSystem.GetInstance().GetPlayerId(nowTurn);

        if (count <= 0)
        {
            TurnSystem.GetInstance().NextTurn();
            PlayerSystem.GetInstance().RemovePlayer(id);
            TurnSystem.GetInstance().RemoveTurnPlayer(id);
            return(true);
        }

        return(false);
    }
    private void OnTriggerEnter2D(Collider2D collision)
    {
        Enemy enemy = collision.GetComponent <Enemy>();

        if (enemy != null)
        {
            enemy.TakeDamage(1);
        }

        PlayerSystem player = collision.GetComponent <PlayerSystem>();

        if (player != null)
        {
            player.TakeDamage(1);
        }
    }
예제 #29
0
        public void SetSystem(PlayerSystem player)
        {
            Owner = player;
            Owner.ItemDropSystem.ItemCreated      += OnItemCreated;
            Owner.ItemDropSystem.ItemUICreated    += OnItemUICreated;
            Owner.SpiritUISystem.MoveItemToPlayer += OnItemMovedToPlayer;

            void OnItemUICreated(ItemUISystem itemUI)
            {
                itemUI.DoubleClickedInPlayerInventory += OnItemDoubleClicked;
                ApplyConsumable += itemUI.System.OnConsumableApplied;
            }

            void OnItemMovedToPlayer(ItemUISystem itemUI)
            {
                if (CheckHaveFreeSlot(out var freeSlotIndex))
                {
                    var freeSlot = Slots[freeSlotIndex];

                    itemUI.transform.position = freeSlot.transform.position;
                    itemUI.transform.SetParent(freeSlot.transform.parent);

                    AddItemToPlayer(itemUI, freeSlotIndex);
                }
            }

            void OnItemCreated(ItemSystem item)
            {
                if (CheckHaveFreeSlot(out var freeSlotIndex))
                {
                    ItemsUI.Add(
                        Owner.ItemDropSystem.CreateItemUI(item.Data, freeSlotIndex, Slots[freeSlotIndex].transform, Owner));

                    isSlotEmpty[freeSlotIndex] = false;
                    Slots[freeSlotIndex].SetActive(false);

                    ItemAddedToPlayer?.Invoke(ItemsUI[ItemsUI.Count - 1]);
                    return;
                }
            }

            bool CheckHaveFreeSlot(out int freeSlotIndex)
            {
                freeSlotIndex = isSlotEmpty.IndexOf(true);
                return(freeSlotIndex != -1);
            }
        }
예제 #30
0
        public CombatSystem(Lua Lua, ActionSystem actSys, ActionInventorySystem actInvSys, AISystem aiSys, DropSystem dSys, EffectSystem eSys, EntityMaintenanceSystem eMainSys, ExperienceSystem xSys, ItemInventorySystem iSys, NameSystem nSys, PlayerSystem pSys, StatsSystem sSys)
        {
            actionSystem = actSys;
            aInventorySystem = actInvSys;
            aiSystem = aiSys;
            dropSystem = dSys;
            effectSystem = eSys;
            entityMaintenanceSystem = eMainSys;
            experienceSystem = xSys;
            inventorySystem = iSys;
            nameSystem = nSys;
            playerSystem = pSys;
            statsSystem = sSys;

            lua = Lua;
            RegisterLuaFunctions();
        }
예제 #31
0
        public ShopState(EntityMaintenanceSystem eMS, GearSystem gSys, StatModifierSystem sMSys, StatsSystem sSys, ExperienceSystem eSys, PlayerSystem pSys, DropSystem dSys, NameSystem nSys, StateMachine sMach, ItemSystem iSys, GameMap gMap)
        {
            entMaintenanceSystem = eMS;
            gearSystem = gSys;
            modifierSystem = sMSys;
            statsSystem = sSys;
            experienceSystem = eSys;
            playerSystem = pSys;
            dropSystem=dSys;
            nameSystem = nSys;
            itemSystem = iSys;

            stateSystem = sMach;

            gameMap = gMap;
            NumItems = 5;
        }
예제 #32
0
    private void OnTriggerEnter(Collider other)
    {
        if (other.gameObject.tag == "Player")
        {
            //获取父类的速度属性
            PlayerSystem s     = other.GetComponentInParent <PlayerSystem>();
            float        speed = s.speed;

            GameObject go   = Instantiate(heavyGate, this.transform.position, this.transform.rotation);
            Rigidbody  rigi = go.GetComponent <Rigidbody>();
            //rigi.AddExplosionForce(10, this.transform.position, 0.5f);
            Vector3 force = transform.forward * speed * 1.5f;
            rigi.AddForceAtPosition(force, this.transform.position, ForceMode.Impulse);
            Destroy(this.gameObject);
            Destroy(go, 2.0f);
        }
    }
예제 #33
0
    public IEnumerator Test()
    {
        yield return(new WaitForSeconds(2));

        PlayerSystem.GetInstance().AddPlayer(PlayerTag.PLAYER_BOTTOM, "test", false);

        TurnSystem.GetInstance().SetFirstTurn("test");


        yield return(new WaitForSeconds(2));

        DeckSystem.GetInstance().AllMoveCardDecktoDeck(
            DeckTag.ANIMATION_RIGHT_DECK,
            DeckTag.DRAW_DECK,
            3,
            0.05F,
            3);
    }
예제 #34
0
    /// <summary>첫 번째 턴을 결정하는 함수 </summary>
    public void DecideFirstTurn()
    {
        int    nowCardScore = 0;
        string playerName   = null;

        for (int i = 0; i < PlayerSystem.GetInstance().Players.Count; i++)
        {
            int score = PlayerSystem.GetInstance().Players[i].PlayerCard[0].GetCardScore();

            if (score > nowCardScore)
            {
                playerName   = PlayerSystem.GetInstance().Players[i].PlayerId;
                nowCardScore = score;
            }
        }

        SetFirstTurn(playerName);
    }
예제 #35
0
        public void SetSystem(PlayerSystem player)
        {
            if (player == null)
            {
                Debug.LogError($"{this} owner player is null");
                return;
            }

            Owner = player;

            HealthSystem = new HealthSystem(this)
            {
                IsVulnerable = true
            };

            AbilityControlSystem.Set(Data.Abilities);
            TraitControlSystem.Set(Data.Traits);
        }
예제 #36
0
        /// <summary>
        /// Allows the game to perform any initialization it needs to before starting to run.
        /// This is where it can query for any required services and load any non-graphic
        /// related content.  Calling base.Initialize will enumerate through any components
        /// and initialize them as well.
        /// </summary>
        protected override void Initialize()
        {
            var worldBuilder = new WorldBuilder();
            var playerSystem = new PlayerSystem(_entityFactory);

            _world = worldBuilder.AddSystem(new SpriteRenderSystem(GraphicsDevice))
                     .AddSystem(playerSystem)
                     .AddSystem(new EnemySystem())
                     .AddSystem(new ShipBulletMovementSystem())
                     .AddSystem(new ShipBulletAlienCollisionSystem())
                     .Build();
            _entityFactory.World = _world;

            _scalingBatch  = new SpriteBatch(GraphicsDevice);
            _scalingTarget = new RenderTarget2D(GraphicsDevice, 224, 256);

            base.Initialize();
        }
예제 #37
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        PlayerSystem player = collision.GetComponent <PlayerSystem>();
        Weapon       weapon = collision.GetComponent <Weapon>();

        if (player != null && weapon != null)
        {
            player.level = int.Parse(SceneManager.GetActiveScene().name.Replace("LEVEL", "")) + 1;
            SaveSystem.SavePlayer(player, weapon);
            if (player.level <= 3)
            {
                SceneManager.LoadScene("LEVEL" + player.level);
            }
            else
            {
                SceneManager.LoadScene("MENU");
            }
        }
    }
예제 #38
0
 private void OnTriggerEnter2D(Collider2D collision)
 {
     if (!opened)
     {
         PlayerSystem playerSystem = collision.GetComponent <PlayerSystem>();
         Weapon       weapon       = collision.GetComponent <Weapon>();
         if (playerSystem != null && weapon != null)
         {
             opened = true;
             animator.SetBool("open", true);
             System.Random random   = new System.Random();
             int           amountB  = random.Next(1, 11);
             int           amouuntG = random.Next(1, 6);
             playerSystem.GetHealth(1);
             weapon.GetBullet(amountB);
             weapon.GetGrenade(amouuntG);
         }
     }
 }
예제 #39
0
    public IEnumerator StartGame()
    {
        StartCoroutine(PlayerSystem.GetInstance().ShareCard(DeckTag.DRAW_DECK, 12, 0.1f));

        yield return(new WaitForSeconds(PlayerSystem.GetInstance().Players.Count * 1));

        DeckSystem.GetInstance().MoveCardDecktoDeck(DeckTag.DRAW_DECK, DeckTag.PUT_DECK, 1, 1, 0, 0.5f);

        yield return(new WaitForSeconds(1));

        PlayerSystem.GetInstance().PlayerCardReverse(PlayerSystem.GetInstance().GetMyPlayerIndex(), 0.5f);

        yield return(new WaitForSeconds(1));

        IsStartGame = true;

        TurnSystem.GetInstance().SetFirstTurn("1");
        TurnSystem.GetInstance().StartTurn();
    }
예제 #40
0
        public void SetSystem(PlayerSystem player)
        {
            Owner = player;
            Owner.ElementSystem.LearnedElement      += OnElementLearned;
            Owner.PlayerInputSystem.ClikedOnGround  += OnClickedOnGround;
            Owner.PlayerInputSystem.ClickedOnCell   += OnClickedOnCell;
            Owner.SpiritPlaceSystem.SpiritPlaced    += OnSpiritPlaced;
            Owner.PlayerInputSystem.ClickedOnSpirit += OnClicledOnSpirit;
            Owner.PlayerInputSystem.RMBPresed       += OnClickedOnGround;

            void OnClickedOnCell(GameObject go) => ActivateUI(true);
            void OnClickedOnGround() => ActivateUI(false);
            void OnClicledOnSpirit(GameObject go) => ActivateUI(false);
            void OnSpiritPlaced(SpiritSystem spirit) => ActivateUI(false);
            void OnElementLearned(int learnCost) => UpdateUI();

            void ActivateUI(bool activate)
            {
                if (activate)
                {
                    UpdateUI();

                    Owner.ResourceUISystem.GetSpiritButton.gameObject.SetActive(true);
                    Owner.ResourceUISystem.GetSpiritButton.gameObject.transform.position =
                        Owner.CellControlSystem.ChoosedCell.transform.position + new Vector3(-10, 10, -40);
                }
                else
                {
                    Owner.ResourceUISystem.GetSpiritButton.gameObject.SetActive(false);
                }
            }

            void UpdateUI()
            {
                astralLevel.text   = Owner.Data.ElementLevels[(int)ElementType.Astral].ToString();
                darknessLevel.text = Owner.Data.ElementLevels[(int)ElementType.Darkness].ToString();
                iceLevel.text      = Owner.Data.ElementLevels[(int)ElementType.Ice].ToString();
                ironLevel.text     = Owner.Data.ElementLevels[(int)ElementType.Iron].ToString();
                stormLevel.text    = Owner.Data.ElementLevels[(int)ElementType.Storm].ToString();
                natureLevel.text   = Owner.Data.ElementLevels[(int)ElementType.Nature].ToString();
                fireLevel.text     = Owner.Data.ElementLevels[(int)ElementType.Fire].ToString();
            }
        }
예제 #41
0
 public EntityManager(StateMachine sMach, DropSystem dSys, PlayerSystem pS, StatsSystem sS, ItemSystem iS, StatModifierSystem mS, EffectSystem efS, EquipmentSystem eqS, AISystem aiS, GearSystem gS, ExperienceSystem xS, ItemInventorySystem invS, NameSystem nS, ProfessionSystem profS, ActionSystem actS, ActionInventorySystem aInvS, CombatSystem cSys, EntityMaintenanceSystem eMS)
 {
     stateSystem = sMach;
     dropSystem = dSys;
     entMaintenanceSystem = eMS;
     aInventorySystem = aInvS;
     combatSystem = cSys;
     playerSystem = pS;
     statsSystem = sS;
     itemSystem = iS;
     modifierSystem = mS;
     effectSystem = efS;
     equipmentSystem = eqS;
     aiSystem = aiS;
     gearSystem = gS;
     experienceSystem = xS;
     inventorySystem = invS;
     nameSystem = nS;
     professionSystem = profS;
     actionSystem = actS;
 }
예제 #42
0
	private void OnDisable(){
		if (PlayerSystem.current == this)
		{
			PlayerSystem.current = null;
		}
	}
예제 #43
0
        private void LoadConfig()
        {
            _netConfig = Config.Get<NetConfig>("network");
            _phyConfig = Config.Get<PhysicsConfig>("physics");
            _scriptConfig = Config.Get<ScriptConfig>("script");

            PathHelpers.SetBasePath(_scriptConfig.ScriptPath);

            _bifrost = new BifrostServer(_netConfig.Port, _netConfig.MaxConnections);
            RPCManager.SetConnection(_bifrost);
            AddInternalSystem(_bifrost, 0);
            PacketFactory.AddCallback<AckStatePacket>(OnAckState);
            PacketFactory.AddCallback<ClientStatePacket>(OnClientState);

            PlayerSystem ps = new PlayerSystem();
            AddEntitySystem(ps);
        }
예제 #44
0
        private void InitializeSystems()
        {
            Console.WriteLine("Initializing Game Systems");

            professionSystem = new ProfessionSystem();
            effectSystem=new EffectSystem(lua);
            equipmentSystem = new EquipmentSystem();
            experienceSystem = new ExperienceSystem();         
            itemSystem = new ItemSystem();
            inventorySystem = new ItemInventorySystem();
            modifierSystem = new StatModifierSystem();
            nameSystem = new NameSystem(lua);
            playerSystem = new PlayerSystem(nameSystem, stateSystem);
            gearSystem = new GearSystem();
            statsSystem = new StatsSystem();
            aInventorySystem = new ActionInventorySystem(lua, statsSystem);
            actionSystem = new ActionSystem(lua);
            aiSystem = new AISystem();
            dropSystem = new DropSystem(dropMap);
        }
예제 #45
0
 public ExploreState(GameMap gMap, PlayerSystem pS, StateMachine sM)
 {
     gameMap = gMap;
     playerSystem = pS;
     stateSystem=sM;
 }