Ejemplo n.º 1
0
        public SwypeControl(HipsterEngine engine)
        {
            _engine             = engine;
            _screen             = _engine.Screens.CurrentScreen;
            listScreens         = new List <SwypeScreen>();
            ValueX              = 0;
            ValueY              = 0;
            MaxHeight           = 0;
            MinHeight           = 0;
            MaxWidth            = 0;
            MinHeight           = 0;
            MousePosDown        = new Vec2();
            MousePosMove        = new Vec2();
            MousePosUp          = new Vec2();
            IsMouseDown         = false;
            CurrentScrollWidth  = 0;
            CurrentScrollHeight = 0;
            ActiveScreen        = 0;

            InitMouse();

            _screen.MouseDown += (element, state) => listScreens.ForEach(s =>
            {
                s.OnMouseAction(state);
            });
            _screen.MouseMove += (element, state) => listScreens.ForEach(s => s.OnMouseAction(state));
            _screen.MouseUp   += (element, state) => listScreens.ForEach(s => s.OnMouseAction(state));
        }
Ejemplo n.º 2
0
 public PhysicsController(HipsterEngine engine)
 {
     _engine         = engine;
     _solverContacts = new SolverContacts();
     IsInitialized   = false;
     FactoryBody     = new BodyFactory(this);
 }
Ejemplo n.º 3
0
 public MoveControl(HipsterEngine engine)
 {
     _engine = engine;
     _canvas = _engine.Surface.Canvas;
     Radius  = 100;
     X       = _engine.Surface.Width - Radius - Radius / 2;
     Y       = _engine.Surface.Height - Radius - Radius / 2;
     Tracker = new TrackerBall(_engine, X, Y, Radius / 3, this);
 }
Ejemplo n.º 4
0
 public TimeWatch()
 {
     _engine    = null;
     Timeout    = 0;
     _enabled   = false;
     _time      = 0;
     CountTicks = 0;
     MaxTicks   = -1;
 }
Ejemplo n.º 5
0
        public GameWindowGPU(int width, int height)
            : base(width, height, GraphicsMode.Default, "HipsterEngine 1.0", GameWindowFlags.Default, DisplayDevice.Default)
        {
            VSync = VSyncMode.Off;

            Engine = new HipsterEngine(Width, Height);

            PaintSurface += OnPaintSurface;
        }
Ejemplo n.º 6
0
        public TimeWatch(HipsterEngine engine)
        {
            Timeout    = 0;
            _enabled   = false;
            _time      = 0;
            CountTicks = 0;
            MaxTicks   = -1;
            _engine    = engine;

            _engine.Screens.CurrentScreen.Update += (time, dt) => Update();
        }
Ejemplo n.º 7
0
        public HipsterEngine CreateEngine(int width, int height)
        {
            _activity.Window.SetFlags(WindowManagerFlags.Fullscreen, WindowManagerFlags.Fullscreen);

            _renderer = new SKGLRenderer();

            _view = new SKGLSurfaceView(_activity);
            _view.SetRenderer(_renderer);
            _view.Touch            += ViewOnTouch;
            _renderer.PaintSurface += ViewOnPaintSurface;

            Engine = new HipsterEngine(width, height);
            Engine.OnResize(width, height);

            return(Engine);
        }
Ejemplo n.º 8
0
            public TrackerBall(HipsterEngine engine, float x, float y, float radius, MoveControl moveControl)
            {
                _engine      = engine;
                _moveControl = moveControl;

                X      = x;
                Y      = y;
                baseX  = x;
                baseY  = y;
                Radius = radius;

                PaintFill = new SKPaint
                {
                    IsAntialias = true,
                    Style       = SKPaintStyle.Fill,
                    Color       = new SKColor(40, 40, 40)
                };

                InitMouse();
            }
Ejemplo n.º 9
0
        public SKDrawDebug(HipsterEngine engine)
        {
            _engine = engine;
            _canvas = _engine.Surface.Canvas;

            Flags = DrawFlags.Aabb |
                    DrawFlags.Shape |
                    DrawFlags.Pair |
                    DrawFlags.Obb |
                    DrawFlags.Joint |
                    DrawFlags.CenterOfMass |
                    DrawFlags.CoreShape;
            paintCircleSolid = new SKPaint
            {
                Style       = SKPaintStyle.Stroke,
                Color       = SKColors.Green,
                IsAntialias = true,
                StrokeWidth = 1
            };
        }
Ejemplo n.º 10
0
        public AttackControl(HipsterEngine engine, float radius)
        {
            _engine = engine;
            Radius  = radius;
            X       = Radius + Radius / 2;
            Y       = _engine.Surface.Height - Radius - Radius / 2;

            PaintFill = new SKPaint
            {
                Style       = SKPaintStyle.Fill,
                IsAntialias = true,
                Color       = new SKColor(100, 100, 100, 100)
            };

            PaintBorder = new SKPaint
            {
                Style       = SKPaintStyle.Stroke,
                IsAntialias = true,
                StrokeWidth = 5,
                Color       = new SKColor(30, 30, 30)
            };

            _engine.Screens.CurrentScreen.MouseDown += (element, state) =>
            {
                if (IsIntersect(state.X, state.Y))
                {
                    PaintFill.Color = new SKColor(40, 40, 40);
                    Click?.Invoke(null, null);
                }
            };
            _engine.Screens.CurrentScreen.MouseUp += (element, state) =>
            {
                if (IsIntersect(state.X, state.Y))
                {
                    PaintFill.Color = new SKColor(100, 100, 100, 100);
                }
            };
        }
Ejemplo n.º 11
0
 public ParticlesSystem(HipsterEngine engine)
 {
     _engine   = engine;
     Particles = new List <Particle>();
 }
Ejemplo n.º 12
0
 public ParticlesControllerFire(HipsterEngine engine) : base(engine)
 {
     Random = new Random();
 }
Ejemplo n.º 13
0
 public ScreenController(HipsterEngine engine)
 {
     _hipsterEngine = engine;
     CurrentScreen  = null;
     UI             = new UIController();
 }