示例#1
0
        public static List <ISystem> MakeSimSystems(RanitasDependencies dependencies)
        {
            List <ISystem> systems = new List <ISystem>()
            {
                new FlySpawnSystem(dependencies.Time, dependencies.PondState, dependencies.FlyData),
                new FlyDirectionSystem(dependencies.Time, dependencies.PondState, dependencies.FlyData, dependencies.DirectionChangeData),
                new FlyMoveSystem(dependencies.Time, dependencies.FlyData),
                new FlyNoiseSystem(dependencies.Time, dependencies.FlyData, dependencies.FlyNoiseData),
                new FrogInputSystem(dependencies.Time, dependencies.FrogData),
                new FrogShapeDeformationSystem(dependencies.FrogData),
                new GravityPhysicsSystem(dependencies.Time),
                new SwimingFrogPhysicsSystem(dependencies.Time, dependencies.PondState, dependencies.FrogData),
                new WetDryFrogSystem(dependencies.PondState),
                new MainRectUpkeepSystem(),
                new LilyCollisionSystem(dependencies.PondState),
                new WaterSystem(dependencies.Time, dependencies.PondState),
                new ToungueSystem(dependencies.FrogData, dependencies.Time),
                new ToungueShapeSystem(dependencies.FrogData),
                new TounguePositionSystem(dependencies.FrogData),
                new ParentedRectUpkeepSystem(),
                new InsectEatingSystem(),
                new ScoreSystem(4),
            };

            return(systems);
        }
示例#2
0
        public ECSSim(RanitasDependencies dependencies)
        {
            FrogFactory frogFactory = new FrogFactory(dependencies.FrogData, dependencies.PondData);

            mFactory          = new PlayerFactory(frogFactory);
            mSystems          = RanitasSystems.MakeSimSystems(dependencies);
            mRenderingSystems = RanitasSystems.MakeRenderSystems(dependencies);
        }
示例#3
0
        public static List <ISystem> MakeRenderSystems(RanitasDependencies dependencies)
        {
            List <ISystem> systems = new List <ISystem>()
            {
                new FrogAnimationSystem(dependencies.AnimationData),
                new RenderSystem(dependencies.GraphicsDevice, dependencies.PondState, dependencies.FrogSprite, dependencies.UIFont, dependencies.AnimationData, dependencies.WaterEffect),
            };

            return(systems);
        }