diff --git a/SpriteLibrary/bin/Release/SpriteLibrary.XML b/SpriteLibrary/bin/Release/SpriteLibrary.XML deleted file mode 100644 index 5c53934..0000000 --- a/SpriteLibrary/bin/Release/SpriteLibrary.XML +++ /dev/null @@ -1,1766 +0,0 @@ - - - - SpriteLibrary - - - - - This is a delegate for a keypress event. - - - - - - - This is a system that can be used to check for any keypress on a form. It is usually used through - - - You want to define a variable on your form, something like: - - private KeyMessageFilter the_filter = new KeyMessageFilter(); - - When the form loads (in the - event of the form), set the filter with: - - Application.AddMessageFilter(the_filter); - - And then, to use it, do something like: - - bool Up = m_filter.IsKeyPressed(Keys.W); - bool Down = m_filter.IsKeyPressed(Keys.S); - - Much of this code was found here: - - - - - A strongly-typed resource class, for looking up localized strings, etc. - - - - - Returns the cached ResourceManager instance used by this class. - - - - - Overrides the current thread's CurrentUICulture property for all - resource lookups using this strongly typed resource class. - - - - - Looks up a localized string similar to {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033{\fonttbl{\f0\fnil\fcharset0 Calibri;}} - {\colortbl ;\red0\green0\blue255;} - {\*\generator Riched20 10.0.10586}\viewkind4\uc1 - \pard\sa200\sl276\slmult1\f0\fs22\lang9 This is the Running Demo, which was created to test out the SpriteController: {{\field{\*\fldinst{HYPERLINK http://www.codeproject.com/Articles/1085446/Using-Sprites-Inside-Windows-Forms }}{\fldrslt{http://www.codeproject.com/Articles/1085446/Using-Sprites-Inside-Windows-Forms\ul0\cf0}}}}\f0 [rest of string was truncated]";. - - - - - A single frame of an animation - - - - - One animation. A series of images. - - - - - Create an image from an image that has a bunch of frames in the one image. - Start at the specified position (Start), and grab Count items (if we can find them) - - The number of frames to grab - A point in the image where we start capturing frames - The smart image this is part of - the image we use for the sprite. Should have lots of images as a part of it. - the width of each frame - the height of each frame - The duration in miliseconds for this frame - - - - Create an image from an image that has a bunch of frames in the one image. - Start at (0,0) with the specified height and width. Pull out as many images as we can - - The smart image this is part of - the image we use for the sprite. Should have lots of images as a part of it. - the width of each frame - the height of each frame - The duration in miliseconds for this frame - - - - This is the holder and parser for images within the AnimatedSprite world - It allows you to store and access animations. A smart image might be a "troll" - that has a series of animations for up, down, left, right, and die. - - - - - Make an animated image from an image that contains multiple frames - - The sprite controller this is attached to - The image we use to draw the animation from - The width of the image to cut out of the main image - The height of the image to cut out of the main image - The duration in miliseconds - - - - Return true if the specified animation and frame for that animation needs - to be changed due to the time passing. - - The animation index - the frame index - The time that has passed since the last frame was displayed. - - - - - Check to see if the animation is in the last frame. Only works if animateonce is set to true - - The animateOnce value of the sprite - The animation we think we are on - The frame we think we are on - - - - - Return the number of frames that the specified animation has. - - What animation to check - The number of animation frames found in that animation - - - - An EventArgs that contains information about Sprites. Most of the Sprite events use - this SpriteEventArgs. - - - - - If another Sprite is involved in the event (Collision), than that Sprite is included here. - It will be null if no other Sprite is involved. - - - - - The CollisionMethod used in the event. Currently, only rectangle collisions are used - - - - - For the CheckBeforeMove event, newlocation will be the location the sprite is trying - to move to. You can adjust the point (move it left, right, up, down) and it will affect - the placement of the sprite. - - - - - Used primarily in the CheckBeforeMove event. If you set cancel to true, then the move fails. - You can use this to keep a Sprite from going places where it ought not to go. - - - - - A Sprite is an animated image that has a size, position, rotation, and possible vector - It tracks where in the animation sequence it is, can report colisions, etc. This SpriteController - draws, moves, and deals with most graphical aspects of the sprites for you. - - - - - The Sprite ID as specified by the sprite controller. - - - - - The name of the sprite. Use SetSpriteName(Name) to change this name. Most Named sprites - are used to define what a sprite is. Once you have created a named sprite, you usually use - to clone the sprite for use. The basic rule of thumb is - to load your sprites from images once, and name the initial sprites. Then, when you go to use - those sprites, get duplicates of them. The reason for this is because it takes more processing time to initially - create the sprites than it takes to duplicate them. - - - - - Set the opacity of the sprite. The value should be between 0 and 1. 1 is solid, 0 is transparent. - Sometimes you want to drag a sprite around the map, or show a sprite that "could be there." Setting - the sprite opacity is usually how you do that. One warning, however. The opacity value takes effect the - next time it is drawn. If the sprite is animating rapidly, it will take effect nearly emmediately. If - it is not animating, not moving, or just sitting there, then it may not take effect for quite some time. - - - - - Return the name of the sprite that this was duplicated from. A duplicated sprite will have - no name, but will have a SpriteOriginName. - - - - - This is the frame of the current animation sequence. You can use this if you need to figure out what frame index - to resume something at, or something like that. - - - - - The final frame is the one that gets displayed once the animation has finished. - - - - - Report whether or not the animation has been completed. When you tell a Sprite to AnimateOnce, - this will report "false" until the animation sequence has been finished. At that time, the value - will be "True." The tricky bit is that this is a boolean. If you have not told a sprite to - animate once, it will always return "false." If a sprite is paused, this returns "false." The only - time this returns "true" is when you tell a sprite to animate once, or animate a few times, and those - times have completed. At that time, this will report "True". If you have a sprite with only one frame, - it may not look like it is "animating", but it is. It is simply animating that one frame over and over. - So, AnimationDone reports false, unless you have told it to animate_once. - - - - - The movement speed of the sprite. To make a Sprite move, you need to set the MovementSpeed, - the direction (using - , - , - , - or ), and the - property. - The speed is calculated in pixels per amount of time. A higher number is faster than a lower number. - - - - - Tells us if we are in the process of doing a MoveTo operation. This boolean should be the - opposite of SpriteReachedEndpoint, but that boolean is poorly named. This is usually the easier - one to use. - - - - - If we are trying to collide with a sprite, we store that sprite here. - - - - - Determine if the sprite automatically moves (you need to give it a direction [using one of the - SetSpriteDirection functions] and speed [MovementSpeed = X] also) - - - - - A number from 0 to 100. Default = 50. Higher numbers print on top of lower numbers. If you want a sprite to - always be drawn on top of other sprites, give it a number higher than 50. If you want a sprite to go under - other sprites, make its number lower than 50. - - - - - Determine if the sprite will automatically move outside the box. If not, it will hit the side of the box and stick - - - - - Get or set the animation nimber. It is best to change the animation using ChangeAnimation. - It is safer. - - - - - The number of animations this sprite has - - - - - Report whether or not this Sprite has been drawn. If it has, then it needs to be erased at - some point in time. - - - - - The sprite location as found on the base image. This is usually the easiest location to use. - - - - - The sprite location as found on the picture-box that this sprite is associated with. Used when dealing with mouse-clicks - - - - - Return the size of the sprite in reference to the image on which it is drawn. To get the - size of the Sprite in relation to the PictureBox, use GetVisibleSize - - - - - Return the relative size of the Sprite in relation to the PictureBox. If the box has been - stretched or shrunk, that affects the visible size of the sprite. - - - - - Change the rotation of the sprite, using degrees. 0 degrees is to the right. 90 is up. - 180 left, 270 down. But, if your sprite was drawn facing up, then rotating it 90 degrees - will have it pointing left. The angle goes counter-clockwise. The image will be scaled - such that it continues to fit within the rectangle that it was originally in. This results - in a little bit of shrinking at times, but you should rarely notice that. - - - - - Flip the image when it gets printed. If your sprite is walking left, flipping it will - make it look like it is going right. - This works great for many things. But, if your program is gobbling memory or CPU, you may need to - consider using Sprite.AddAnimation - - - - - Flip the image when it gets printed. If your sprite looks like it is facing up, doing - this will make it look like it faces down. - This works great for many things. But, if your program is gobbling memory or CPU, you may need to - consider using Sprite.AddAnimation - - - - - If the Sprite is in the middle of being Destroyed, this is set to true. When a Sprite is - Destroyed, it needs to erase itself and do some house-cleaning before it actually vanishes. - During this time, you may not want to use it. It is always a good thing to verify a Sprite - is not in the middle of being destroyed before you do something important with it. To Destroy - a Sprite, use the Sprite.Destroy() function. - - - - - This is true unless we are using MoveTo(point) or MoveTo(list of points) to tell the sprite to move - from one place to the next. This boolean tells us if it has finished or not. - - - - - The visible Height as seen in the PictureBox. It may be stretched, or shrunk from the actual - image size. - - - - - The visible width as seen in the PictureBox. The Sprite may be stretched or shrunk from the - actual image size. - - - - - A Sprite can hold a payload. Use this to store extra information about the various Sprites. Health, Armor, - Shoot time, etc. But, to store information in the payload, you need to make a new class of SpritePayload. The syntax - for doing so is: - - public class TankPayload : SpritePayload { public int Armor; public int Speed; } - - You can access the payload and retrieve the various values. - - - - - A delegate that has a SpriteEventArgs instead of EventArgs. Used for most - of the Sprite events. This allows us to pass more information from sprite events than - a basic EventArgs allows for - - The Sprite that triggers the event - A SpriteEventArgs class which contains Sprite Event values - - - - This event happens right after the sprite is created. Use this to immediately set a - sprite to animate once or something like that. - - - - - This happens when the sprite hits the border of the picture-box. - Useful for when you want to have shots explode when they hit the side. - - - - - This happens when the sprite has exited the picture box. Useful when you want to - keep sprites from traveling on forever after exiting. - - - - - Only used when you tell an animation to animate once. At the end of the animation, - this function fires off. - - - - - This happens when two sprites hit each-other. The SpriteEventArgs that is returned - contains the sprite that this sprite hits. - - - - - This event fires off before a sprite is drawn. Use it if you have constraints. You - can change the location or cancel the move entirely. - - - - - This event happens when someone clicks on the sprite (on the rectangle in which the sprite is). - If you want the event to fire off only when someone clicks on the visible part of the sprite, - use ClickTransparent instead. - - - - - This event happens when someone clicks on the sprite (on the sprite image itself). - If the sprite is sometimes hidden, but you want the click to work even if it is not - visible at that instant, use Click instead. - - - - - This event happens when the mouse moves over the sprite, and then pauses. We use the hover timing from the - parent form. - - - - - When the mouse moves over the sprite. Use this for a menu, when you want the menu item to glow when the - mouse is over the menu item sprite. - - - - - When the mouse moves off the sprite. Use this for a menu, when you want the menu item to stop glowing when - the mouse moves away from the menu item sprite. - - - - - This event happens when the mouse moves over a non-transparent portion of the sprite, and then pauses. - We use the hover timing from the parent form. - - - - - When the mouse moves over a non-transparent portoin of the sprite. Use this for a menu, when you want the - menu item to glow when the mouse is over the menu item sprite. - - - - - When the mouse moves off the non-transparent portion of the sprite. Use this for a menu, when you want the - menu item to stop glowing when - the mouse moves away from the menu item sprite. - - - - - When the frame of an animation changes. If you want to have something happen every time - the foot of your monster comes down, when the swing of your sword is at certain points, etc. - Check to see that the Animaton and FrameIndex are what you expect them to be. - - - - - An event for when you tell a Sprite to MoveTo(Point) a specific point, or, when you - tell the Sprite to MoveTo(list of points). When the Sprite has reached the final destination, - the Sprite fires off this event. - - - - - When you tell a sprite to MoveTo(list of points), this fires off every time it gets to - one of the points. When it gets to the final point, only the SpriteAtEndPoint event fires off. - - - - - The Sprite has just been told to be destroyed. You might want to do some cleanup. - If you need to destroy some payload data, or tell something to cleanup after the sprite - this is where to do that. - - - - - Generate a new sprite. It takes the image and the width and height. If there are multiple images of that width - and height in the image, an animation is created. - - The sprite controller that manages this sprite - The image we pull the animation from - The width of one animation frame - The height of one animation frame - - - - Generate a new sprite. It takes the image and the width and height. If there are multiple images of that width - and height in the image, an animation is created. - - The sprite controller that manages this sprite - The image we pull the animation from - The size of the animation frame - - - - Generate a new single-frame sprite from the specified image. - - The sprite controller that manages this sprite - The image we pull the animation from - - - - Generate a new sprite. It takes a width, height, and the duration in Milliseconds for each frame - - The sprite controller - The image we pull the animations from - The width of one animation frame - the height of one animation frame - The number of milliseconds each frame is shown for as it animates. - - - - Create a Sprite from an animation image, specifying the number of consecutive - frames to grab. - - A point on the specified image where we begin grabbing frames - The Sprite controller we are associating the sprite with - An image that we grab the frames from - The width of one frame - The height of one frame - The number of milliseconds each frame is displayed for - The number of frames to grab as a part of this animation - - - - Create a Sprite that is based off of the specified sprite. Clone the Sprite except that - we set SpriteName = "" and OrigSpriteName = the OldSprite.SpriteName. That way we know that - the sprite was duplicated from the original, and we can still distinguish the original from - the duplicate. - - The Sprite to make a copy of - If we want to set this sprite name to be that of the original. This is a terrible idea. Never do it. - - - - Give this sprite a name. This way we can make a duplicate of it by specifying the name - - A string that represents the new name of the sprite - - - - Add another animation to an existing Sprite. After you add animations, you can use - ChangeAnimation to select which animation you want the specified sprite to show. - For example, you may want to have Animation 0 be a guy walking left, and animation 1 is - that same guy walking right. Because we do not specify the number of frames, it starts - at the top-left corner and grabs as many frames as it can from the image. - - The animation image to grab the frames from - The width of each frame - The height of each frame - - - - Add another animation to an existing Sprite. After you add animations, you can use - ChangeAnimation to select which animation you want the specified sprite to show. - For example, you may want to have Animation 0 be a guy walking left, and animation 1 is - that same guy walking right. Because we do not specify the number of frames, it starts - at the top-left corner and grabs as many frames as it can from the image. - - The animation image to grab the frames from - The size of each frame - - - - Add another animation to an existing Sprite. After you add animations, you can use - ChangeAnimation to select which animation you want the specified sprite to show. - For example, you may want to have Animation 0 be a guy walking left, and animation 1 is - that same guy walking right. Because we do not specify the number of frames, it starts - at the top-left corner and grabs as many frames as it can from the image. - - The animation image to grab the frames from - - - - Add another animation to an existing Sprite. After you add animations, you can use - ChangeAnimation to select which animation you want the specified sprite to show. - For example, you may want to have Animation 0 be a guy walking left, and animation 1 is - that same guy walking right. Because we do not specify the number of frames, it starts - at the top-left corner and grabs as many frames as it can from the image. - - The animation image to grab the frames from - The duration the single frame uses before refreshing. 1000 is a good number. - - - - Add another animation to an existing Sprite. After you add animations, you can use - ChangeAnimation to select which animation you want the specified sprite to show. - For example, you may want to have Animation 0 be a guy walking left, and animation 1 is - that same guy walking right. Because we do not specify the number of frames, it starts - at the top-left corner and grabs as many frames as it can from the image. - - The animation image to grab the frames from - The width of each frame - The height of each frame - The time in milliseconds we use for each frame - - - - Add another animation to an existing Sprite. After you add animations, you can use - ChangeAnimation to select which animation you want the specified sprite to show. - For example, you may want to have Animation 0 be a guy walking left, and animation 1 is - that same guy walking right. Because we do not specify the number of frames, it starts - at the top-left corner and grabs as many frames as it can from the image. - - The animation image to grab the frames from - The width of each frame - The height of each frame - The time in milliseconds we use for each frame - The number of frames we grab from the image - The starting position on the Image where we grab the first frame - - - - Duplicate an animation, except rotated by the specified number of degrees. For example, if you have - a single animation (0), and you want to rotate it by 90 degrees, it will create animation 1 with that - rotation to it. In the long haul, generating a few rotated animations is less memory intensive than - rotating it on demand. - - An integer value specifying the animation to duplicate - The amount of counter-clockwise rotation to add - - - - Duplicate an animation, except rotated by the specified number of degrees. For example, if you have - a single animation (0), and you want to rotate it by 90 degrees, it will create animation 1 with that - rotation to it. In the long haul, generating a few rotated animations is less memory intensive than - rotating it on demand using the or booleans. - - An integer value specifying the animation to duplicate - A boolean, stating if we should mirror horizontally - A boolean, stating if we should mirror vertically - - - - Start a new animation, but do it just once. You can use AnimateJustAFewTimes(1) to the same effect. - Or, you can use AnimateJustAFewTimes with a different number. The SpriteAnimationComplete event will - fire off when the animation completes. The variable, Sprite.AnimationDone will be true once the - animation finishes animating. - - Once the animation has finished, display this animation frame. - -1, or any number that is not an actual frame, will show the last frame of the animation. - The animation index you want to use - - - - Start a new animation. It will complete the animation the number of times you specify. - For example, if your sprite is walking, and one animation is one step, specifying 4 here - will result in your sprite taking 4 steps and then the animation stops. You will want - to make sure you are checking for when the animation stops, using the SpriteAnimationComplete event, - checking the Sprite.AnimationDone flag. - - The animation index you want to use - The number of animations to do before it stops - Once the animation has finished, display this animation frame. - -1, or any number that is not an actual frame, will show the last frame of the animation. - - - - Start a new animation index from scratch - - The animation index you want to use - The first frame you want to start the animation at. - - - - Change the animation speed of a particular animation. This looks at the first frame - and compares that frame to the speed specified. It adjusts all the animations by the - same percentage. - - The integer representing the animation to change - The speed in milliseconds for the new animation - - - - Change the animation speed of a specific frame. Beware. This affects every sprite using this frame - - The index of the animation - The index of the frame within the animation - The new frame duration in milliseconds - - - - Get the animation speed of a single frame. - - The animation we are looking at - The index of the frame we wish to get the speed of - -1 if either index is out of range. Otherwise, return the total milliseconds of the specified frame. - - - - Return the animation speed of this particualar animation of the sprite. - - The animation we are looking at - The speed which was set. The speed is calculated in pixels per amount of time. A higher number is faster than a lower number - - - - Actually draw the Sprite. Never use this. It is used by the SpriteController - - - - - Put the Sprite at a specified location, using the dimentions of the BackgroundImage. - Unless you are using coordinates you have gotten from a mouse-click, this is how you want - to place a Sprite somewhere. It is the easiest way to track things. But, if you are - doing something using mouse-click coordinates, you want to use PutPictureBoxLocation - - The new point on the Image - - - - Put the Sprite at a specified location, using the dimentions of the BackgroundImage. - Unless you are using coordinates you have gotten from a mouse-click, this is how you want - to place a Sprite somewhere. It is the easiest way to track things. But, if you are - doing something using mouse-click coordinates, you want to use PutPictureBoxLocation - - The X location on the background image - the Y location on the background image - - - - Put the Sprite at a specified location, using the dimentions of the PictureBox. - You want to use this if you got your X/Y position from a mouse-click. Otherwise, - this is the harder way to track things, particularly if your window can resize. Use - PutBaseImageLocation instead. - - A point on the PictureBox - - - - Done when the box resizes. We need to recompute the picturebox location. The resize function - automatically calls this. You should never need to do so. - - - - - This is run from the sprite controller every 10 miliseconds. You should never - need to call this yourself. - - - - - Return the point that this sprite needs to be shooting for, for the center of this sprite to - hit the center of the destination sprite. - - The sprite we are shooting for trying to hit - A point which allows the moving sprite to collide with the destination sprite. - - - - Resize the sprite using the base image coordinates. The width and height specified - are relative to the size of the background image, not the picturebox. - - The size (width, height) to make the sprite - - - - Tell the sprite to kill itself. It will erase itself and then - be removed from the spritelist. Then it will be gone forever. - - - - - Remove the sprite from the field. This does not destroy the sprite. It simply removes it from action. - Use UnhideSprite to show it again. - - - - - Make the sprite reappear. If you have not positioned it yet, it will show up at the top corner. It is best to only - use this when you have hidden it using HideSprite - - - - - Return true or false, asking if the specifiec sprite is at the point on the picturebox. - You can use this with a mouse-click to see if you are clicking on a sprite. Use the - SpriteCollisionMethod "transparent" to see if you have clicked on an actual pixel of the - sprite instead of just within the sprite rectangle. - - The x and y location in ImageBox coordinates. - The method of determining if the sprite is at that position - True if the sprite is at the specified location, false if it is not - - - - Because sprites are scaled (shrunk or stretched), this function finds the point - within the sprite that is specified by the location. this function is used by - a number of internal processes, but may be useful to you. But probably not. - - A point given in Image coordinates - A point within the pixel that can be used to find a particular pixel in a sprite. - - - - Check to see if the sprite exists at the point specified. The point given is - in coordinates used by the image (not the PictureBox, use SpriteAtPictureBox for that) - - An imagebox location - the method to use to determine if the image is there - true if the sprite is at that position, false if it is not - - - - return the current image frame. Warning: If you write to this image, it will - affect all sprites using this frame. - - An image that is the current sprite frame for the current animation - - - - return the frame for the given index. Warning: If you write to this image, it will - affect all sprites using this frame. - - The Animation index we are trying to find - The Frame index we are trying to find - An image that is the current sprite frame for the current animation - - - - Replace a sprite image. It will replace the current frame unless you specify both an animation - and the frame within the animation you wish to replace. Warning: This replaces the image_frame - for every sprite that uses that is based off the same image. - - The new image to use - The animation you want to change - The frame within the animation you want to change - - - - Taking into consideration how the sprite is stretched or shrunk, it - returns a SpriteAdjustmentRatio that can be used to work with the sprite - itself. - - The current SpriteAdjustmentRatio used to display this sprite - - - - Return true if the sprite can go to this point and still be on the drawing-board. - - The point, given in pixels and corresponding to pixels on the picturebox - true or false - - - - Return true if the sprite can go to this point and still be on the drawing-board. - - The point, given in pixels and corresponding to pixels on the background image - true or false - - - - Move to where the destination sprite currently is at. This is a dumb move. It does not take into - consideration the movement direction of the destination sprite. So the moving sprite does need to be - moving a bit faster than the sprite you are trying to hit for it to do so. - - The sprite we are trying to hit - - - - Tell the Sprite to move towards a destination. You need to give the sprite a MovementSpeed - and tell the sprite that it can automatically move. But the sprite will begin a journey towards - that point at the MovementSpeed you have set. When it gets to the point, the SpriteArrivedAtEndPoint event - will fire off. Also, the SpriteReachedEnd bool will be true. - - An image-point that the sprite will move to. - - - - Tell the sprite to move towards each point in turn. The sprite will move in a straight line until the first point. - From there it moves to the next point, until it has reached the last point. Every time it reaches a point, the - SpriteArrivedAtWaypoint event is triggered. When it reaches the final point in the list, the SpriteArrivedAtEndPoint - event is triggered. While the sprite is moving, the SpriteReachedEndPoint attribute is set to false. When it has - arrived, it is set to true. - - A list of Image-Points that the sprite will follow, one after the other - - - - Sets the Sprite Moving towards a given point. You are responsible to do something with it once it gets there. - If you want it to automatically stop upon reaching it, use MoveTo instead. Actually, the MoveTo function works - a lot better than this one. Because of integer rounding and a few other things, this function is a little - bit imprecise. If you send it towards a point, it will go in that general direction. The MoveTo function - will perpetually recalculate its way to the destination point and actually reach that point. SetSpriteDirectionToPoint - will sort-of head in the direction of the point. But MoveTo will go to that point. - - The destination, based off a point on the background image, that we send the sprite towards. - - - - Cancel a MoveTo command. The sprite will stop moving, and all the waypoints will be removed. - - - - - Given a "degree" (from 0 to 360, set the direction - that the sprite moves automatically. 0 is right, 90 is up, 180 is left - and 270 is down. - - the degrees to use - - - - Set the sprite direction using Radians. Most people do not want to use this. - Use SetSpriteDirectionDegrees instead unless you like math and know what you - are doing with Radians. - - The angle in radians - - - - Set the sprite direction using a vector. The vector may contain - a speed as well as the movement delta (amount of x shift, and amount - of y shift.) If so, this function may also affect the movement speed - Most people prefer to use SetSpriteDirectionDegrees instead of using - vectors. - - A vector - - - - Convert a number from degrees to radians. - - The number from 0 to 360 in degrees - The corresponding number converted to radians - - - - Convert a number from radians to degrees. - - The number of radians - The corresponding number in degrees - - - - Return the current vector that the sprite is moving along - - The current sprite vector - - - - Returns the direction the sprite is currently traveling, using Radians. - - The direction in radians that the sprite is traveling in - - - - Get the direction that the sprite is traveling in in degrees. You may want to - use Math.Round on the results. The value returned is usually just a tiny bit off - from what you set it with. For example, if you set the sprite movement direction - to be 270 degrees (down), this function may return it as 269.999992. Rounding the - number will give it back to you at probably the same direction you set it as. - - A double (it has a decimal place) that represents the direction in degrees - - - - Return the centerpoint of the sprite, as found on the background image - - a point with the x and y based off the background image location - - - - Return the centerpoint of the sprite, as found on the picturebox - - A point with the x and y found on the picturebox - - - - Check to see if the specified rectangle overlaps with the sprite. - - The rectangle we are looking to see if we hit - True if the rectangle overlaps the sprite rectabgle - - - - Check to see if two sprites hit each-other. The sprite collision methods are - not all programmed in. - - The Sprite we are checking to see if we hit - The method we use to determine if they hit - - - - This is used when two sprites hit each-other. - - The sprite it hits - the method for checking - - - - Make the sprite show up in front of all other sprites. - - - - - Make the sprite go behind all other sprites - - - - - Pause the sprite. We can pause just the animation (and still let it move), pause movement (and let it animate), or pause everything. - - Which aspects of the sprite you want to pause. - - - - unpause the sprite. - - Which aspects of the sprite you want to unpause. - - - - Ask if the sprite is paused using the specified sprite type (default is PauseAll) - - The spritePauseType to see if the sprite is paused with - True if the sprite is set to pause the specified item, false if not - - - - SpriteLibrary is a .net graphical library for creating and controlling sprites on a PictureBox. - - A sprite is an animated image that can be moved around on a - picturebox. You can give the sprite an initial location, and either move it around manually or give it - specific movement controls. - - To use this library, you will need to add a reference to it in your project. You will also need a reference to - "Windows Base." - In the solution explorer, if you right-click your project and go to "add", and then "reference" and click - "WindowsBase" towards the bottom. - On that same window, on the left, click "browse." Then, click the "Browse..." button and find the sprite-library dll. - The main places to find the SpriteLibrary and sample programs using this SpriteLibrary are here: - - and - - - - - - The various types of collisions a sprite can have. Currently only rectangle works. The other types were added when I - thought the different types of collision types were needed. Someday we may add these if we find they are useful, or if - someone else decides they want to help program the SpriteLibrary. These values are primarily used in Sprite Events - - - - - Checks if the two rectangles that contain the sprites overlap. Each rectangle is the starting location of the sprite - (top left) with the sprite width, and height marking the other sides of the rectangle. - - - - - Draws a circle (ellipse) inside the sprite rectangles and see if those ellipses overlap - - - - - Check to see if nontransparent portions of a sprite collide. Not working. - - - - - A structure that contains the width and height adjustment ratio. Use this if you need to manually calculate positions - between the PictureBox that the sprite is in, and the Background Image itself. - - - - - Divide a picturebox ratio by this to get the image location. Multiply an image location by this to get the picturebox location. - - - - - Divide a picturebox ratio by this to get the image location. Multiply an image location by this to get the picturebox location. - - - - - The type of pause signals you can give a sprite or the sprite controller - - - - - Pause the animating. Animation resumes from the current frame when we unpause. A paused animation will continue - to display the same image frame until it is unpaused. - - - - - Pause any automatic movement. Movement resumes where it was left off if you unpause. The sprite will - just sit there until unpaused. - - - - - Pause events. Sprite collisions, movement checks, etc are stopped until the unpause. - - - - - All pausable things are paused. PauseAnimation, PauseMovement, and PauseEvents. - - - - - A sprite controller is the main heart of the sprite class. Each SpriteController manages one picturebox. - If at all possible, try to keep each game in one picturebox, and try to avoid making and destroying - new forms with SpriteController/pictureboxes in them. It is hard to destroy them completely. - - - A sprite controller controls animations and - can help you check for key-presses. To make a sprite controller, - you need to have one defined for your main form: - - SpriteController MySpriteController; - - And then, when the form is created, after the InitializeComponents() function, you - need to configure the drawing area and create the sprite controller: - - MainDrawingArea.BackgroundImage = Properties.Resources.Background; - MainDrawingArea.BackgroundImageLayout = ImageLayout.Stretch; - MySpriteController = new SpriteController(MainDrawingArea); - - In this case, MainDrawingArea is the picturebox where all the sprites will be displayed. - - - - - Since everything needs a random number generator, we make one that should be accessible throughout your program. - - - - - This is only used by the SpriteController. It allows us to queue up invalidation requests. - - - - - The count of all the sprites the controller knows about. This includes named - sprites, which may not be visible. - - - - - If your sprite images need substantial growing or shrinking when displayed, you can try setting this to "true" - to see if it makes it run any faster. What it does is to resize the image once, and keep a cached copy of that - image at that size. If you use the same sprite, but with different sizes, setting this to "True" may actually slow - down the game instead of speeding it up. - - - - - Create a sprite controller, specifying the picturebox on which the sprites - will be displayed. You want to have the PictureBox already defined, and a background image - already set for the PictureBox. - - - This is an example of a Form class that defines a SpriteController. The MainDrawingArea is a - PictureBox. - - public partial class ShootingFieldForm : Form - { - public ShootingFieldForm() - { - InitializeComponent(); - MainDrawingArea.BackgroundImage = Properties.Resources.Background; - MainDrawingArea.BackgroundImageLayout = ImageLayout.Stretch; - MySpriteController = new SpriteController(MainDrawingArea); - } - } - - - The PictureBox. - that the sprites will be drawn in - - - - Create a sprite controller, specifying the picturebox on which the sprites - will be displayed. - - - This is an example of a Form class that defines a SpriteController. The MainDrawingArea is a - PictureBox. While defining the SpriteController, we - are also setting a function used for the DoTick. event. - - public partial class ShootingFieldForm : Form - { - public ShootingFieldForm() - { - InitializeComponent(); - MainDrawingArea.BackgroundImage = Properties.Resources.Background; - MainDrawingArea.BackgroundImageLayout = ImageLayout.Stretch; - MySpriteController = new SpriteController(MainDrawingArea, CheckForKeyPress); - } - - private void CheckForKeyPress(object sender, EventArgs e) - { - //Do stuff here - } - } - - - - The picturebox that the sprites will be drawn in - A function on the form that you want to have run every tick - - - - Define some things and set up some things that need defining at instantiation - - - - - Change the Tick Interval. By default, the spritecontroller does a tick every 10ms, which - is very fast. Some people may prefer it to happen less regularly. Must be > 5, and less than 1001 - - The new tick interval - - - - Allow the sprite sort-method to be overridden. - - - The default sprite sort method is: - - SpriteComparisonDelegate = delegate (Sprite first, Sprite second) { return first.Zvalue.CompareTo(second.Zvalue); }; - - Which compares just the Zvalues of the two sprites. Often you will want to have a more refined sort. The sort - order determines which sprites appear on top of other sprites. In the default state, if two sprites have the - same Zvalue, it is very uncleaer which one will draw on top of the other one. By overridding this sort function, - you can specify a very precise order of which sprite is on top and which is behind. - - - - - This is what happens when someone clicks on the PictureBox. We want to pass any Click events to the Sprite - - - - - - - Check to see if we are hovering over anything - - - - - - - Replace the image on which the sprites are drawn. Use this when you move to a new playing field, - or want to have a different background - - Replacing the background image is actually a lot more complex than you might imagine. Once you use the - below code, it can be done without any problem. But you need to do it this way, or it just goofs up in - a number of small ways. - You need to tell the sprite controller that you are replacing the background image, - and you need to change the image to that image as well.Because the Images are actually - pointers to memory where the image sets, changes to one image will affect the other image.This goofs - things up, so what we do is duplicate the image twice, and tell the sprite controller to use one of the - copies and then set the background to be the other one of the two copies.Finally, we tell the picturebox - to invalidate itself.That does everything that is needed. - - void ReplaceBackground(Image NewBackground) - { - if (MyController == null) return; - if (NewBackground == null) return; - - Image OneImage = new Bitmap(NewBackground); - MyController.ReplaceOriginalImage(OneImage); - - Image TwoImage = new Bitmap(NewBackground); - pb_map.BackgroundImage = TwoImage; - pb_map.Invalidate(); - } - - - - The new image that all sprites will be drawn on - - - - Notify the sprite controller that you have changed the background image on the - PictureBox. Whatever background is on the picturebox is now used to draw all the sprites on. - - - - - The function called by the timer every 10 millisecods We also call do_tick, which - is the function defined by the user. This is usually where they will do the majority of the work. - - - - - - - The function called by the timer every 10 millisecods This is usually where you will do the majority of the work. - You can define this manually, or when you instantiate the SpriteController - - - The Sprite controller uses a System.Windows.Forms.Timer. This timer is notoriously un-precise, but it is very - easy to set up initially. It tries to fire off every 10 milliseconds, but it can fire off incredibly - slowly if you have long pieces of code; the DoTick function needs to finish before it can start again. You want all your - functions to run as quickly as possible to avoid things looking jerky. - Most programs you will make using the sprite library will begin by tapping into the DoTick Event. - Every time the sprite controller is ready to pass control back to your program, it will call - the DoTick event. You want to see if you should be doing anything, and then exiting the do-tick function. - - public partial class ShootingFieldForm : Form - { - public ShootingFieldForm() - { - InitializeComponent(); - MainDrawingArea.BackgroundImage = Properties.Resources.Background; - MainDrawingArea.BackgroundImageLayout = ImageLayout.Stretch; - MySpriteController = new SpriteController(MainDrawingArea, CheckForKeyPress); - } - - private void CheckForKeyPress(object sender, EventArgs e) - { - bool left = false; - bool right = false; - bool space = false; - bool didsomething = false; - TimeSpan duration = DateTime.Now - LastMovement; - if (duration.TotalMilliseconds < 100) - return; - LastMovement = DateTime.Now; - if (MySpriteController.IsKeyPressed(Keys.A) || MySpriteController.IsKeyPressed(Keys.Left)) - { - left = true; - } - if (MySpriteController.IsKeyPressed(Keys.D)||MySpriteController.IsKeyPressed(Keys.Right)) - { - right = true; - } - if (left && right) return; //do nothing if we conflict - if (left) - { - if (LastDirection != MyDir.left) - { - Spaceship.SetSpriteDirectionDegrees(180); - //We want to only change animation once. Every time we change - //the animation, it starts at the first frame again. - Spaceship.ChangeAnimation(0); - LastDirection = MyDir.left; - } - didsomething = true; - Spaceship.MovementSpeed = 15; - Spaceship.AutomaticallyMoves = true; - } - if (right) - { - if (LastDirection != MyDir.right) - { - Spaceship.SetSpriteDirectionDegrees(0); - Spaceship.ChangeAnimation(0); - LastDirection = MyDir.right; - } - didsomething = true; - Spaceship.AutomaticallyMoves = true; - Spaceship.MovementSpeed = 15; - } - if(!didsomething) - { - LastDirection = MyDir.stopped; - //No keys pressed. Stop moving - Spaceship.MovementSpeed = 0; - } - } - - - - - - Process a form resize by recalculating all the picturebox locations for all sprites. - - The form - Form event args - - - - Count the number of sprites that were duplicated from the sprite with the specified name. When you use a - SpriteController.DuplicateSprite(string) - command, it creates a new sprite that is based off the named sprite. This function will count those duplicated sprites. - - The name to look for - The count of sprites that are duplicates of the specified name - - - - Return a list of all sprites - - A list of all sprites - - - - Return all sprites that were based off a particular sprite name. - When you use a - SpriteController.DuplicateSprite(string) - command, it creates a new sprite that is based off the named sprite. This function returns a list of those - duplicated sprites. - - The sprite name to find - A list of sprites that were based off the named sprite - - - - Return a list of all sprites which have been drawn on the image - - A list of sprites that have been drawn - - - - Return a list of all sprites which are not master sprites (which are duplicates of something) - - A list of sprites - - - - Return an adjustment ratio. This is the image-size to picture-box ratio. - It is used for calculating precise pixels or picture-box locations. - - A SpriteAdjustmentRatio containing the current ratio of picture-box pixels to image-box pixels - - - - This takes a point, the location on a picturebox, and returns the corresponding point on the BackgroundImage. - Picturebox locations are "sloppy"; the background image locations are very precise. Since this takes a "sloppy" - number and returns a precise number, it does some rounding to figure out where the specified location is. - - A point on the picturebox that you want the corresponding image pixel location for. - A point (x,y) on the background image which corresponds to the picture-box coordinates you sent into the function. - - - - Return the height of an object in picture-box terms. It is basically the virtual height - of the sprite or other item. - - The image-box heigh (or sprite height) - An integer that corresponds to the hight as displayed in the picturebox - - - - Return the width of an object in picture-box terms. It takes the width of a sprite or other - item that is being displayed on the screen, and calculates the width as displayed in the - picture-box (taking into consideration stretching or shrinking) - - An integer width of the drawn item - An integer that contains the number of pixels wide it is on the picturebox - - - - This does the reverse of an adjusted point. It takes a point on the image and - transforms it to one on the PictureBox - - A point on the image, using the x and y pixels on the image - A location that can be used on the picture-box, taking into consideration the image being stretched. - - - - Adjust a rectangle that is based on the image, according to the stretch of the picturebox - - A rectangle using coordinates from the image - a rectangle that is adjusted for the PictureBox - - - - Adjust an image point so that it conforms to the picturebox. - - The image location - the corresponding point on the PictuerBox - - - - Invalidate a rectangle that is specified in image coordinates - - A rectangle based on the image coordinates - Whether to do it now, or to queue it up for another time. - - - - Invalidate the entire image on which the sprites are drawn - - Whether to do it now, or to queue it up for another time. - - - - The Background Image on which the sprites are drawn. This image ends up having - sprite parts on it. The OriginalImage is the version that is clean. Use - ReplaceOriginalImage to replace the background Image. - - - - - The Image from which the background is taken when we erase sprites. The BackgroundImage - is the image that contains images of the sprites as well as the background image. Use - ReplaceOriginalImage to replace this and the BackgroundImage. - - - - - Make a duplicate of the specified sprite. The duplicate does not yet have a location. - - The sprite to duplicate - A new sprite. If What is null, returns null - - - - Find a sprite that has been named with the specified name. Then duplicate that sprite - - - Below is a function that creates a sprite based off a name, and puts it at the designated coordinates. - - public void AddSprite(string name, int startx, int starty) - { - Sprite NewSprite = MySpriteController.DuplicateSprite(What.ToString()); - if(NewSprite != null) - { - NewSprite.AutomaticallyMoves = true; - NewSprite.CannotMoveOutsideBox = true; - NewSprite.SetSpriteDirectionDegrees(180); //left - NewSprite.PutBaseImageLocation(new Point(startx, starty)); - NewSprite.MovementSpeed = 5; - } - } - - - The name of a sprite - A duplicate of the specified sprite. It has no location, and does not retain the sprite name. - - - - Find a sprite that has a specified name. This returns the actual sprite with that name. - You usually want to use DuplicateSprite(Name) to clone the sprite and get one you can - destroy. If you destroy a named sprite without duplicating it, you may end up losing - it for the remainder of the program. - - A string that matches something added to a sprite with Sprite.SetName - A sprite that has the specified name, or null if no such sprite exists. - - - - Add the specified sprite to the list of sprites we know about. You usually do not need to do this. - Sprites add themselves to the controller when you create a new sprite. - - The sprite to add to the sprite-controller - - - - Tell a sprite to destroy itself. The sprite will have Destroying property set to true from - the time you destroy it until it vanishes. Whe you destroy a sprite, it will erase itself - and remove itself from the controller. After it is destroyed, it is completely gone. - - The Sprite to destroy - - - - Remove all sprites (even named sprites that have not yet been displayed) - - - - - Find the specified Sprite in the controller and change its name to the specified string. - You can do the same thing with Sprite.SetName(Name) - - The Sprite to find - The string to change the name to - - - - This takes a point, as given by the mouse-click args, and returns the sprites at that point. Different - functions use different coordinates, whether based off the background image, or based off the picturebox. - This one uses the picturebox coordinates. So you can use this directly from a MouseDown or MouseUp function. - - The picture-box point being clicked on - A list of sprites that are all at the specified point. - - - - This takes a point, as as specified on the image, and returns the sprites at that point. Different - functions use different coordinates, whether based off the background image, or based off the picturebox. - This one uses the background image coordinates. Use SpritesAdPoint() if you are doing something based off - a MouseUp or MouseDown function. This is used for functions based on sprite location or based off the absoloute - location (using the background image location is much more precise than the visible location in the picturebox) - - The point being looked at - A list of sprites that are all at the specified image point - - - - Return a list of all the sprites that intersect with the given background-image-based rectangle - - The rectangle on the image we are trying to find - A list of the sprites that have any portion of it inside the rectangle - - - - Check to see if any keys are pressed. There is a small glitch with the - key-pressed system. If the form loses focus, and someone releases a key, the key-up is never - triggered. It is a good thing to ResetKeypressState() occasionally if you think your form may have - lost focus. - - True if a key is pressed, false if no keys are pressed. - - - - Return a list of all the keys that are currently pressed. There is a small glitch with the - key-pressed system. If the form loses focus, and someone releases a key, the key-up is never - triggered. It is a good thing to ResetKeypressState() occasionally if you think your form may have - lost focus. - - A List of Keys which are currently considered to be pressed. - - - - Check to see if the given key is pressed. There is a small glitch with the - key-pressed system. If the form loses focus, and someone releases a key, the key-up is never - triggered. It is a good thing to ResetKeypressState() occasionally if you think your form may have - lost focus. - - The key to check to see if it is pressed - True if the key is pressed, false if that key is not pressed - - - - If you want to have a KeyDown function that is triggered by a keypress function, add the event here. - The event should have the parameters (object sender, KeyEventArgs e) - - The function to set - - - - If you want to have a KeyUp function that is triggered by a keypress function, add the event here. - The event should have the parameters (object sender, KeyEventArgs e) - - The function to set - - - - Reset the keypress status. Sometimes the sprite controller misses a key being released (usually - because a window has taken priority, or something has changed). Calling this function will reset - the stored memory of whether a key has been pressed. - - - - - Change the display order of the specified sprite so it goes in front of all other sprites. - - The sprite we want to show up in front - - - - Change the display order of the specified sprite so it goes behind all other sprites. - - The sprite to send behind all other sprites - - - - Change the display order of the specified sprite so it is more likely to go behind all other sprites. - - The sprite to send behind all other sprites - - - - Change the display order of the specified sprite so it is more likely to go in front of other sprites - - The sprite to send behind all other sprites - - - - Change the display order of the sprites such that the specified sprite appears behind the other sprite. - - The sprite we are changing the display order of - The sprite we want to go behind - - - - Make the sprite go in front of the specified sprite. - - The sprite to change the display order of - The sprite we want to make sure we display in front of - - - - Play a sound that we can check to see if it has completed. - - The sound to play - The name, which we can use to determine if it has finished. - - - - Play a sound bit in a separate thread. When the thread is done, set a bool saying that - - The sound to play - The string that we can use to track the status of the sound - A function that gets called when the sound is complete - - - - Check to see if the specified sound has finished playing - - The name of the sound - True if the sound is not currently playing. False if it is currently playing. - - - - Pause everything. It loops through all the sprites in the SpriteController and sends the specified - SpritePauseType to each one. Look at the documentation for SpritePauseType to determine which pause - type to use. - - The SpritePauseType to send all sprites - - - - un-Pause everything. This will send the specified SpritePauseType unpause command - to all sprites. - - The SpritePauseType to unpause for all sprites - - - - The SpritePayload is a stub of a class, for storing user-defined data and functions along with a sprite. - - - Basically, you want to "override" this class. You do this by making your - own class that looks something like: - - public class TankPayload : SpritePayload - { - public int Armor = 20; - public int FireTime = 100; - } - - And then you add that to your sprite: - TankSprite.Payload = new TankPayload(); - If there is no payload, then the payload - property is null. If you have multiple types of SpritePayloads, you may need to do something like: - - if(TankSprite.payload != null and TankSprite.payload is TankPayload) - { - TankPayload tPayload = (TankPayload)TankSprite.payload; tPayload.Armor--; - } - - - - - diff --git a/SpriteLibrary/bin/Release/SpriteLibrary.dll b/SpriteLibrary/bin/Release/SpriteLibrary.dll deleted file mode 100644 index eaa3011..0000000 Binary files a/SpriteLibrary/bin/Release/SpriteLibrary.dll and /dev/null differ diff --git a/SpriteLibrary/bin/Release/SpriteLibrary.pdb b/SpriteLibrary/bin/Release/SpriteLibrary.pdb deleted file mode 100644 index 67db46b..0000000 Binary files a/SpriteLibrary/bin/Release/SpriteLibrary.pdb and /dev/null differ diff --git a/SpriteLibrary/obj/Release/CoreCompileInputs.cache b/SpriteLibrary/obj/Release/CoreCompileInputs.cache deleted file mode 100644 index e8c1fbc..0000000 --- a/SpriteLibrary/obj/Release/CoreCompileInputs.cache +++ /dev/null @@ -1 +0,0 @@ -a8cf27034d92fac0fcc617c33163b8923a432866 diff --git a/SpriteLibrary/obj/Release/DesignTimeResolveAssemblyReferences.cache b/SpriteLibrary/obj/Release/DesignTimeResolveAssemblyReferences.cache deleted file mode 100644 index cbb9a6f..0000000 Binary files a/SpriteLibrary/obj/Release/DesignTimeResolveAssemblyReferences.cache and /dev/null differ diff --git a/SpriteLibrary/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache b/SpriteLibrary/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache deleted file mode 100644 index c8ba4b3..0000000 Binary files a/SpriteLibrary/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache and /dev/null differ diff --git a/SpriteLibrary/obj/Release/SpriteLibrary.Properties.Resources.resources b/SpriteLibrary/obj/Release/SpriteLibrary.Properties.Resources.resources deleted file mode 100644 index 341c9a4..0000000 Binary files a/SpriteLibrary/obj/Release/SpriteLibrary.Properties.Resources.resources and /dev/null differ diff --git a/SpriteLibrary/obj/Release/SpriteLibrary.csproj.FileListAbsolute.txt b/SpriteLibrary/obj/Release/SpriteLibrary.csproj.FileListAbsolute.txt deleted file mode 100644 index f11d8da..0000000 --- a/SpriteLibrary/obj/Release/SpriteLibrary.csproj.FileListAbsolute.txt +++ /dev/null @@ -1,8 +0,0 @@ -C:\Users\TimYo\Documents\Visual Studio 2015\Projects\SpriteLibrary\SpriteLibrary\bin\Release\SpriteLibrary.XML -C:\Users\TimYo\Documents\Visual Studio 2015\Projects\SpriteLibrary\SpriteLibrary\bin\Release\SpriteLibrary.dll -C:\Users\TimYo\Documents\Visual Studio 2015\Projects\SpriteLibrary\SpriteLibrary\bin\Release\SpriteLibrary.pdb -C:\Users\TimYo\Documents\Visual Studio 2015\Projects\SpriteLibrary\SpriteLibrary\obj\Release\SpriteLibrary.Properties.Resources.resources -C:\Users\TimYo\Documents\Visual Studio 2015\Projects\SpriteLibrary\SpriteLibrary\obj\Release\SpriteLibrary.csproj.GenerateResource.Cache -C:\Users\TimYo\Documents\Visual Studio 2015\Projects\SpriteLibrary\SpriteLibrary\obj\Release\SpriteLibrary.dll -C:\Users\TimYo\Documents\Visual Studio 2015\Projects\SpriteLibrary\SpriteLibrary\obj\Release\SpriteLibrary.pdb -C:\Users\TimYo\Documents\Visual Studio 2015\Projects\SpriteLibrary\SpriteLibrary\obj\Release\SpriteLibrary.csprojResolveAssemblyReference.cache diff --git a/SpriteLibrary/obj/Release/SpriteLibrary.csproj.GenerateResource.Cache b/SpriteLibrary/obj/Release/SpriteLibrary.csproj.GenerateResource.Cache deleted file mode 100644 index b0737c4..0000000 Binary files a/SpriteLibrary/obj/Release/SpriteLibrary.csproj.GenerateResource.Cache and /dev/null differ diff --git a/SpriteLibrary/obj/Release/SpriteLibrary.csprojResolveAssemblyReference.cache b/SpriteLibrary/obj/Release/SpriteLibrary.csprojResolveAssemblyReference.cache deleted file mode 100644 index 1c09120..0000000 Binary files a/SpriteLibrary/obj/Release/SpriteLibrary.csprojResolveAssemblyReference.cache and /dev/null differ diff --git a/SpriteLibrary/obj/Release/SpriteLibrary.dll b/SpriteLibrary/obj/Release/SpriteLibrary.dll deleted file mode 100644 index eaa3011..0000000 Binary files a/SpriteLibrary/obj/Release/SpriteLibrary.dll and /dev/null differ diff --git a/SpriteLibrary/obj/Release/SpriteLibrary.pdb b/SpriteLibrary/obj/Release/SpriteLibrary.pdb deleted file mode 100644 index 67db46b..0000000 Binary files a/SpriteLibrary/obj/Release/SpriteLibrary.pdb and /dev/null differ diff --git a/SpriteLibrary/obj/Release/TempPE/Properties.Resources.Designer.cs.dll b/SpriteLibrary/obj/Release/TempPE/Properties.Resources.Designer.cs.dll deleted file mode 100644 index b8a9f28..0000000 Binary files a/SpriteLibrary/obj/Release/TempPE/Properties.Resources.Designer.cs.dll and /dev/null differ diff --git a/SpriteLibrary/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/SpriteLibrary/obj/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs deleted file mode 100644 index e69de29..0000000 diff --git a/SpriteLibrary/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/SpriteLibrary/obj/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs deleted file mode 100644 index e69de29..0000000 diff --git a/SpriteLibrary/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/SpriteLibrary/obj/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs deleted file mode 100644 index e69de29..0000000