Ejemplo n.º 1
0
        public override void OnEnter()
        {
            base.OnEnter(); CCSize windowSize = Layer.VisibleBoundsWorldspace.Size;

            titleLabel.Position = new CCPoint(windowSize.Width / 2, windowSize.Height - 80);

            if(subtitleLabel != null)
                subtitleLabel.Position = (new CCPoint(windowSize.Width / 2, windowSize.Height - 120));

            ball.Position = windowSize.Center;

            Window.Accelerometer.Enabled = true;

            // Register Touch Event
            var accelListener = new CCEventListenerAccelerometer();

            accelListener.OnAccelerate = DidAccelerate;

            AddEventListener(accelListener); 
        }
Ejemplo n.º 2
0
		public override void OnEnter ()
		{
			base.OnEnter ();

            CCRect visibleBounds = VisibleBoundsWorldspace;

			var origin = Layer.VisibleBoundsWorldspace.Origin;
			var size = Layer.VisibleBoundsWorldspace.Size;

			var sprite = new CCSprite(TestResource.s_Ball);
			sprite.Position = origin + size.Center;
			AddChild(sprite);

			// Create our Accelerometer Listener
			var listener = new CCEventListenerAccelerometer();

			// We will use Lambda expressions to attach the event process
			listener.OnAccelerate = (acceleration) => {
				var ballSize  = sprite.ContentSize;
				var acc = acceleration.Acceleration;
				var ptNow  = sprite.Position;

                var orientation = Application.CurrentOrientation;

				//CCLog.Log("Accelerate : X: {0} Y: {1} Z: {2} orientation: {3}", accelerationValue.X, accelerationValue.Y, accelerationValue.Z, orientation );
				#if ANDROID || WINDOWS_PHONE8
				if (orientation == CCDisplayOrientation.LandscapeRight)
				{
					ptNow.X -= (float) acc.X * 9.81f;
					ptNow.Y -= (float) acc.Y * 9.81f;
				}
				else
				{
					ptNow.X += (float)acc.X * 9.81f;
					ptNow.Y += (float)acc.Y * 9.81f;
				}
				#else
				ptNow.X += (float)acc.X * 9.81f;
				ptNow.Y += (float)acc.Y * 9.81f;
				#endif
                ptNow.X = MathHelper.Clamp(ptNow.X, (float)(visibleBounds.Origin.X+ballSize.Width / 2.0), (float)(visibleBounds.Origin.X + visibleBounds.Size.Width - ballSize.Width / 2.0));
                ptNow.Y = MathHelper.Clamp(ptNow.Y, (float)(visibleBounds.Origin.Y+ballSize.Height / 2.0), (float)(visibleBounds.Origin.Y + visibleBounds.Size.Height - ballSize.Height / 2.0));
				sprite.Position = ptNow;
			};

			// Now we tell the event dispatcher that the sprite is interested in Accelerometer events
			sprite.AddEventListener(listener);		
		}
Ejemplo n.º 3
0
        protected override void AddedToScene()
        {
            base.AddedToScene();

            mouses = new Dictionary<int, CCNode>();

            eTouch = new CCEventListenerTouchAllAtOnce();
            eTouch.OnTouchesBegan = OnTouchesBegan;
            eTouch.OnTouchesMoved = OnTouchesMoved;
            eTouch.OnTouchesEnded = OnTouchesEnded;
            AddEventListener(eTouch);

            eAccel = new CCEventListenerAccelerometer();
            eAccel.OnAccelerate = OnAccelerate;

        }
		internal CCEventListenerAccelerometer (CCEventListenerAccelerometer accelerometer)
			: this()
		{
			OnAccelerate = accelerometer.OnAccelerate;
		}
 internal CCEventListenerAccelerometer(CCEventListenerAccelerometer accelerometer)
     : this()
 {
     OnAccelerate = accelerometer.OnAccelerate;
 }