Update change log
This commit is contained in:
parent
03ab2781ad
commit
42b98b65db
@ -1,70 +1,312 @@
|
||||
{\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1033\deflangfe1033{\fonttbl{\f0\fswiss\fprq2\fcharset0 Calibri;}{\f1\fmodern\fprq1\fcharset0 Consolas;}}
|
||||
{\colortbl ;\red0\green0\blue255;\red0\green0\blue0;\red255\green255\blue255;\red43\green145\blue175;}
|
||||
{\*\generator Riched20 10.0.14393}{\*\mmathPr\mdispDef1\mwrapIndent1440 }\viewkind4\uc1
|
||||
\pard\nowidctlpar\sa200\sl276\slmult1\f0\fs22\lang9 1.0.6\par
|
||||
* Fized MouseEnterTransparent, MouseLeaveTransparent\par
|
||||
* Added a number more Sprite creation functions\par
|
||||
* Added a number more Sprite.AddAnimation functions\par
|
||||
* Allow us to set the ending frame after we animate (which frame do we display when we are done) in AnimateOnce and AnimateJustAFewTimes\par
|
||||
* After a ReplaceImage, it immediately invalidates the sprite and re-draws it.\par
|
||||
* Add a series of Events, Sprite.MouseOverTransparent, Sprite.MouseEnterTransparent, and Sprite.MouseLeaveTransparent. These check the transparent areas of a sprite to see if you are moving over a solid or transparent area of a sprite. For use if there is a lot of empty area inside a sprite, and you do not want to trigger a MouseEnter function over the empty region.\par
|
||||
1.0.5\par
|
||||
* upgraded a lot of documentation. Started the big documentation push\par
|
||||
- inline documentation updated\par
|
||||
- Online documentation file: {{\field{\*\fldinst{HYPERLINK http://tyounglightsys.ddns.info/SpriteLibrary/doc }}{\fldrslt{http://tyounglightsys.ddns.info/SpriteLibrary/doc\ul0\cf0}}}}\f0\fs22\par
|
||||
- Start of a large documentation PDF - Will not see the light of day until 1.0.6\par
|
||||
* added a SpriteIsBeingDestroyed event. That way you can have code fired off as a particular sprite is being destroyed.\par
|
||||
* added three events; MouseHover, MouseEnter, and MouseLeave. When the mouse moves over a sprite for the first time, it does the MouseEnter. When we move off the sprite, it does the MouseLeave, and when we pause over the sprite, it does a MouseHover.\par
|
||||
* Added sprite opacity. Sprite.opacity = .5; \par
|
||||
* fixed some issues with transparency and sprites\par
|
||||
* Fixed my new way to add animations. The rotation they use is opposite of what I use. So everything rotated opposite from what was expected.\par
|
||||
* Added Sprite.MoveTo(Sprite) so a Sprite can target another sprite. The moving sprite will probably need to be moving a bit faster than the destination sprite if the moving sprite hopes to catch up with it.\par
|
||||
* Added GetSpriteBaseImageCenter and GetSpritePictureboxCenter to find the center-point of the sprite.\par
|
||||
* Added SpriteComparisonDelegate, the ability to override the sort order (display order) of sprites. The sort order affects which sprite is printed on top of the other sprites. Whichever one has the highest priority is the one that appears on top of the other ones. The default sort order is created by: \cf2\highlight3\f1\fs19\lang1033 SpriteComparisonDelegate\highlight0 = \cf1\highlight3 delegate\cf2 (\cf4 Sprite\cf2 first, \cf4 Sprite\cf2 second) \{ \cf1 return\cf2 first.Zvalue.CompareTo(second.Zvalue); \}; \highlight0\par
|
||||
\f0\fs22 The sort function simply compares the Zvalue. A more complex version might be:\cf0\lang9\par
|
||||
|
||||
\pard\widctlpar\cf1\highlight3\f1\fs19\lang1033 delegate\cf2 (\cf4 Sprite\cf2 first, \cf4 Sprite\cf2 second) \{\par
|
||||
\cf1 if\cf2 (first.Zvalue != second.Zvalue) \cf1 return\cf2 first.Zvalue.CompareTo(second.Zvalue);\par
|
||||
\cf1 if\cf2 (first.BaseImageLocation.Y != second.BaseImageLocation.Y) \cf1 return\cf2 first.BaseImageLocation.Y.CompareTo(second.BaseImageLocation.Y);\par
|
||||
\cf1 return\cf2 first.BaseImageLocation.X.CompareTo(second.BaseImageLocation.X);\par
|
||||
|
||||
\pard\nowidctlpar\sa200\sl276\slmult1 \};\highlight0\par
|
||||
\cf0\f0\fs22\lang9 * Added another way to Add Animations. We can create an animation that is a rotation of a different animation. For example, you can have something rotated by 45 or 90 degrees.\par
|
||||
* Fixed a bug with large sprites that make other things blink\par
|
||||
* SpriteController.ResetKeypressState() clears any residual keypress. Sometimes the program misses keys being pressed and released. This clears any memory, and starts it from scratch.\par
|
||||
1.0.4\par
|
||||
* fix timing issue with start-animation. It had not been setting the animation start time.\par
|
||||
* Added ability to change the animation speed of one frame. Works across all sprites. \cf2\highlight3\f1\fs19 ChangeFrameAnimationSpeed\lang1033 / GetFrameAnimationSpeed\cf0\highlight0\f0\fs22\lang9\par
|
||||
* Added the ability to return the count of animations this sprite has (Sprite.AnimationCount)\par
|
||||
* Added a Sprite.GetImage(animation, frame) so we can retrieve any specific image\par
|
||||
* added a sprite.unhidesprite function that does the opposite of the hidesprite function.\par
|
||||
* Fix the getanimationspeed func to return the real amount\par
|
||||
* Add a random number generator to the sprite controller\par
|
||||
*Allow a change to the tick-speed. Default is 10ms.\par
|
||||
*Add a spriteController.DestroyAllSprites function\par
|
||||
* Added the ability to replace a sprite frame. (Sprite.ReplaceImage)\par
|
||||
* Added a \cf2\highlight3\f1\fs19 RegisterKeyDownFunction\lang1033 and RegisterKeyUpFunction, as well as the corresponding events on the keyfilter. This allows you to trigger things when a key is pressed and released.\cf0\highlight0\f0\fs22\lang9\par
|
||||
* Added a function to return all the sprites that intersect with a given rectangle\par
|
||||
* Added a KeysPressed function that returns a list of all the keys which are currently pressed.\par
|
||||
* Repaired a glitch in playing sounds. Set the stream position back to 0 (the beginning so you can play it a second time)\par
|
||||
*Repaired a small bug with the animate-once function that kept rotating the animation once it had finished.\line * Support for large sprites. SpriteController.\cf2\highlight3 OptimizeForLargeSpriteImages\lang1033 = true/false will resize the sprite and store it in its resized state. It should print the sprite faster this way than if it needs to squish or expand the sprite every time it goes to print it.\par
|
||||
*Add the ability to specify the starting frame when we tell the sprite to do an animation. \cf1\f1\fs19 public\cf2 \cf1 void\cf2 ChangeAnimation(\cf1 int\cf2 WhichAnimation, \cf1\b int\cf2 StartFrame = 0\b0 )\cf0\highlight0\f0\fs22\lang9\par
|
||||
1.0.3\par
|
||||
* Fixed a problem in the "animate a few times" function. It basically would only animate once, regardless of how many times you told it to animate.\par
|
||||
* Fixed a problem in the sound. I was itterating through a list of sounds, and the list changed. My foreach loop would break. Changed that. Thanks, Warren for pointing that out.\par
|
||||
* Fixed MoveTo - Occasionally the MoveTo will break terribly. If you move the sprite to the position where it is, it will make a vector with NaN (Not a Number) and it throws the sprite off to a place waaaay long away.\par
|
||||
* Fixed MoveTo - Would occasionally send the sprite off in the wrong direction for a bit. The "last movement" time was not set, so, when a direction was set, it would think it had been kept from moving for some time, and leap forward that amount of time. This resulted in the sprite suddenly being half-way across the screen in a strange location. All fixed.\par
|
||||
* Fixed MoveTo(List<Point>). It works much better now. It used to get a slightly off direction (probably a rounding issue) and would not recorrect. It always missed the destination. Changed it to be self correcting.\par
|
||||
* FIxed faster movement to the left than right (due to dropping of decimals instead of rounding)\par
|
||||
* Added this release notes file so people can figure out what has changed since the last update.\par
|
||||
1.0.2\par
|
||||
* Able to change animation speed\par
|
||||
* Added MoveTo\par
|
||||
* Added Mirroring\par
|
||||
1.0.1\par
|
||||
* Minor changes (DateTime.Now -> DateTime.UtcNow)\par
|
||||
* Change to Payload structure. Was "Object" now it is a class of its own: SpritePayload\par
|
||||
* return sprites at point broken terribly. Would return all the named sprites which had never been displayed. Finding all the sprites in the top-left corner returned a ton of sprites that should not have been there. Now it only returns sprites that have been printed.\par
|
||||
1.0.0 Initial Version\par
|
||||
}
|
||||
|