void CreateSpriteWithFontDefinition(CCFontDefinition fontDefinition) { if (textSprite != null) { textSprite.RemoveFromParent(); } var texture = CreateTextSprite(Text, fontDefinition); textSprite = new CCSprite(texture); textSprite.IsAntialiased = isAntialiased; textSprite.BlendFunc = BlendFunc; textSprite.AnchorPoint = CCPoint.AnchorLowerLeft; base.ContentSize = textSprite.ContentSize; base.AddChild(textSprite, 0, TagInvalid); textSprite.UpdateDisplayedColor(DisplayedColor); textSprite.UpdateDisplayedOpacity(DisplayedOpacity); }
public override void OnEnter () { spriteSaved = false; base.OnEnter (); var origin = Layer.VisibleBoundsWorldspace.Origin; var size = Layer.VisibleBoundsWorldspace.Size; //MenuItemFont::setFontSize(20); var sprite = new CCSprite("Images/CyanSquare.png"); sprite.Position = origin + size.Center; AddChild(sprite, 10); // Make sprite1 touchable var listener1 = new CCEventListenerTouchOneByOne (); listener1.IsSwallowTouches = true; listener1.OnTouchBegan = (touch, touchEvent) => { var target = (CCSprite) touchEvent.CurrentTarget; var locationInNode = target.Layer.ScreenToWorldspace(touch.LocationOnScreen); var s = target.ContentSize; var rect = new CCRect(0, 0, s.Width, s.Height); if (rect.ContainsPoint(locationInNode)) { CCLog.Log("sprite began... x = {0}, y = {1}", locationInNode.X, locationInNode.Y); target.Opacity = 180; return true; } return false; }; listener1.OnTouchMoved = (touch, touchEvent) => { var target = (CCSprite) touchEvent.CurrentTarget; target.Position += touch.Delta; }; listener1.OnTouchEnded = (touch, touchEvent) => { var target = (CCSprite) touchEvent.CurrentTarget; CCLog.Log("sprite onTouchesEnded.. "); target.Opacity = 255; }; sprite.AddEventListener(listener1); RunActions(new CCDelayTime(5.0f), new CCCallFunc(() => { spriteSaved = true; sprite.RemoveFromParent(); }), new CCDelayTime(5.0f), new CCCallFunc(() => { spriteSaved = false; AddChild(sprite); }) ); }