public Button(Texture2D OffTex, Texture2D HighlightTex, Texture2D ClickTex, TimeSpan ButtonTime, List<ICursor> PossibleCursors, Rectangle Area) { offTex = OffTex; highlightTex = HighlightTex; clickTex = ClickTex; cursors = PossibleCursors; myHitbox = new Hitbox(Area); buttonTime = ButtonTime; area = Area; myHitbox.Entered += new Hitbox.EnteredEventHandler(myHitbox_Entered); myHitbox.Exited += new Hitbox.ExitedEventHandler(myHitbox_Exited); myState = ButtonState.Off; }
public Butterfly(Vector3 Position, float rotation, Viewport ViewPort, Matrix View, Matrix Projection, ButterflyColors color) { world = Matrix.CreateFromAxisAngle(Vector3.Right, -1 * (float)(Math.PI / 2f)) * Matrix.CreateTranslation(Position); Vector3 ScreenProjection = ViewPort.Project(Position, Projection, View, Matrix.CreateScale(0.1f) * Matrix.CreateFromAxisAngle(Vector3.Right, -1 * (float)(Math.PI / 2f)) * Matrix.CreateTranslation(Position)); hitbox = new Hitbox(new Rectangle((int)(ScreenProjection.X - padX), (int)(ScreenProjection.Y - padY), 2 * padX, 2 * padY)); viewPort = ViewPort; projection = Projection; view = View; hitbox.Entered += new Hitbox.EnteredEventHandler(hitbox_Entered); hitbox.Exited += new Hitbox.ExitedEventHandler(hitbox_Exited); timeSelected = new Stopwatch(); myColor = color; hidden = false; position = Position; startPosition = Position * 20; msOffset = rand.Next(0, 500); wanderDirection = new Vector2(); tether = Vector2.Transform(new Vector2(Position.X, Position.Y), Matrix.CreateScale(0.1f)); }